Column names
Write column names as TableName_ColumnName
. Here is an example:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
procedure TScript701.Execute(Database: TSqlDatabase);
var
DocumentsTable: TSqlPhysicalTable;
DocumentContentsTable: TSqlPhysicalTable;
DocumentsTable_Id: TSqlTableColumnBuilder;
DocumentsTable_Size: TSqlTableColumnBuilder;
DocumentContentsTable_DocumentId: TSqlTableColumnBuilder;
DocumentContentsTable_Contents: TSqlTableColumnBuilder;
begin
DocumentsTable := TSqlPhysicalTable.Create('document_management$documents');
DocumentsTable_Id := DocumentsTable.CreateColumn('Id', TBoundedIntegerType._32);
DocumentsTable_Size := DocumentsTable.CreateColumn('Size', TBoundedIntegerType._64);
DocumentContentsTable := TSqlPhysicalTable.Create('document_management$document_contents');
DocumentContentsTable_DocumentId := DocumentContentsTable.CreateColumn('DocumentId', TBoundedIntegerType._32);
DocumentContentsTable_Contents := DocumentContentsTable.CreateColumn('Contents', TOctetStringType._32);
try
Database.Query(AlterTable(DocumentsTable, [ AddColumnAfter(DocumentsTable_Size, 'Name') ]));
Database.Query(
Update(
[ DocumentsTable, DocumentContentsTable ],
[ Assign(DocumentsTable_Size, Length(DocumentContentsTable_Contents)) ],
[ DocumentContentsTable_DocumentId = DocumentsTable_Id ]
)
);
finally
DocumentsTable.Free();
DocumentContentsTable.Free();
end;
end;