|
|
@@ -271,7 +271,11 @@ bool CAppService::Start()
|
|
|
ret = CDBConnectPool::Instance()->DBExecuteSQL(sql);
|
|
|
if (true != ret)
|
|
|
{
|
|
|
- sql = "ALTER TABLE rm_map add zzjno INT IDENTITY(1,1); ";
|
|
|
+ sql = "ALTER TABLE [rm_map] ADD [zzjno] int ;";
|
|
|
+ ret = CDBConnectPool::Instance()->DBExecuteSQL(sql);
|
|
|
+
|
|
|
+ sql = "WITH CTE AS ( SELECT [zzjno], ROW_NUMBER() OVER (ORDER BY (SELECT NULL)) AS RowNum FROM [rm_map] ) UPDATE CTE SET [zzjno] = RowNum;\
|
|
|
+ CREATE UNIQUE INDEX idx_unique_zzjno ON rm_map(zzjno);";
|
|
|
ret = CDBConnectPool::Instance()->DBExecuteSQL(sql);
|
|
|
|
|
|
sql = "ALTER TABLE rm_map add epos INT default 0;";
|
|
|
@@ -280,6 +284,25 @@ bool CAppService::Start()
|
|
|
ret = CDBConnectPool::Instance()->DBExecuteSQL(sql);
|
|
|
}
|
|
|
|
|
|
+ sql = "SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'rm_map' AND COLUMNPROPERTY(object_id(TABLE_NAME), COLUMN_NAME, 'IsIdentity') = 1;";
|
|
|
+ COdbcStatement stmt;
|
|
|
+ ret = CDBConnectPool::Instance()->DBQuery(stmt, sql);
|
|
|
+ if (true == ret)
|
|
|
+ {
|
|
|
+ if (stmt.FetchNext() == 0)
|
|
|
+ {
|
|
|
+ sql = "ALTER TABLE [rm_map] DROP COLUMN [zzjno];";
|
|
|
+ ret = CDBConnectPool::Instance()->DBExecuteSQL(sql);
|
|
|
+
|
|
|
+ sql = "ALTER TABLE [rm_map] ADD [zzjno] int;";
|
|
|
+ ret = CDBConnectPool::Instance()->DBExecuteSQL(sql);
|
|
|
+
|
|
|
+ sql = "WITH CTE AS ( SELECT [zzjno], ROW_NUMBER() OVER (ORDER BY (SELECT NULL)) AS RowNum FROM [rm_map] ) UPDATE CTE SET [zzjno] = RowNum;\
|
|
|
+ CREATE UNIQUE INDEX idx_unique_zzjno ON rm_map(zzjno);";
|
|
|
+ ret = CDBConnectPool::Instance()->DBExecuteSQL(sql);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
sql = " select top 1 install_1 from rm_map";
|
|
|
ret = CDBConnectPool::Instance()->DBExecuteSQL(sql);
|
|
|
if (true != ret)
|