Generate Scripts doesn't work with Always Encrypted columns.
Generate a script for a database by right-clicking a database in SQL Server Management Studio > Tasks > Generate Scripts, and choosing to script a database with both schema and data. You'll find that this script cannot be run to produce the same database. You will find that script to create Column Master Keys and Column Encryption Keys is not generated. You will also see that output like "N'SqlBinary(65)'" will be generated for Always Encrypted columns. E.g. INSERT [dbo].[Table] ([Id], [Name]) VALUES (1, N'SqlBinary(65)'). This behavior is even seen if you modify the connection string in SMS to include Column Encryption Setting=enabled.
Expected behavior: Generate script that includes the Column Master Keys and Column Encryption Keys. INSERT statements for Always Encrypted columns should insert the encrypted data (even if the user doesn't have access to the keys to decrypt the data). If importing the certificate that the Column Master Keys depend-on is not possible in TSQL, create a plateholder or comment to tell the user the certificate needs to be available.