프로젝트

일반

사용자정보

개정판 9dab7146

ID9dab714680100943f85821d15c9aac23f870bead
상위 1c5bd296
하위 a6a4853a

gaqhf 이(가) 5년 이상 전에 추가함

dev issue #1240 : drawing 생성 / DB 구조 변경 / Signal Line moldeing / Autocad group method

Change-Id: I6fed8b5eedc971226fcddba31cea2cdbbdc0c8cf

차이점 보기:

DTI_PID/APIDConverter/DB/Project_DB.cs
75 75

  
76 76
                                    if (dt.Select(string.Format("NAME = '{0}'", APID_SYMBOL_MAPPING_TABLE)).Length == 0)
77 77
                                    {
78
                                        cmd.CommandText = string.Format("CREATE TABLE {0} (UID TEXT PRIMARY KEY, NAME TEXT, APID_SYMBOL TEXT)", APID_SYMBOL_MAPPING_TABLE);
78
                                        cmd.CommandText = string.Format("CREATE TABLE {0} (UID TEXT PRIMARY KEY, NAME TEXT, APID_SYMBOL TEXT, DATA1 TEXT)", APID_SYMBOL_MAPPING_TABLE);
79 79
                                        cmd.ExecuteNonQuery();
80 80
                                    }
81 81
                                }
......
112 112

  
113 113
                                    if (dt.Select(string.Format("NAME = '{0}'", APID_SYMBOL_MAPPING_TABLE)).Length == 0)
114 114
                                    {
115
                                        cmd.CommandText = string.Format("CREATE TABLE {0} (UID varchar(255) PRIMARY KEY, NAME varchar(MAX), APID_SYMBOL varchar(MAX))", APID_SYMBOL_MAPPING_TABLE);
115
                                        cmd.CommandText = string.Format("CREATE TABLE {0} (UID varchar(255) PRIMARY KEY, NAME varchar(MAX), APID_SYMBOL varchar(MAX), DATA1 varchar(255))", APID_SYMBOL_MAPPING_TABLE);
116 116
                                        cmd.ExecuteNonQuery();
117 117
                                    }
118 118
                                    
......
149 149
                        using (SQLiteCommand cmd = connection.CreateCommand())
150 150
                        {
151 151
                            cmd.CommandText = string.Format(@"
152
                            SELECT s.UID, s.Name, st.Type, sp.APID_SYMBOL FROM {1} as st, {0} as s 
152
                            SELECT s.UID, s.Name, st.Type, sp.APID_SYMBOL, sp.DATA1 FROM {1} as st, {0} as s 
153 153
                                LEFT OUTER JOIN {2} as sp 
154 154
                                    ON s.UID = SP.UID 
155 155
                            WHERE s.SymbolType_UID = st.UID 
......
189 189
                            using (SqlCommand cmd = connection.CreateCommand())
190 190
                            {
191 191
                                cmd.CommandText = string.Format(@"
192
                            SELECT CONVERT(VARCHAR(255), s.UID) AS UID, s.Name, st.Type, sp.APID_SYMBOL FROM {1} as st, {0} as s 
192
                            SELECT CONVERT(VARCHAR(255), s.UID) AS UID, s.Name, st.Type, sp.APID_SYMBOL, sp.DATA1 FROM {1} as st, {0} as s 
193 193
                                LEFT OUTER JOIN {2} as sp 
194 194
                                    ON CONVERT(VARCHAR(255), s.UID) = CONVERT(VARCHAR(255), SP.UID)
195 195
                            WHERE s.SymbolType_UID = st.UID 
......
228 228
                        using (SQLiteCommand cmd = connection.CreateCommand())
229 229
                        {
230 230
                            cmd.CommandText = string.Format(@"
231
                            SELECT l.UID, l.Name, sp.APID_SYMBOL FROM {0} as l 
231
                            SELECT l.UID, l.Name, sp.APID_SYMBOL, sp.DATA1 FROM {0} as l 
232 232
                                LEFT OUTER JOIN {1} as sp 
233 233
                                    ON l.UID = SP.UID ;", LineTypes_TABLE, APID_SYMBOL_MAPPING_TABLE);
234 234
                            using (SQLiteDataReader dr = cmd.ExecuteReader())
......
257 257
                            using (SqlCommand cmd = connection.CreateCommand())
258 258
                            {
259 259
                                cmd.CommandText = string.Format(@"
260
                            SELECT l.UID, l.Name, sp.APID_SYMBOL FROM {0} as l 
260
                            SELECT l.UID, l.Name, sp.APID_SYMBOL, sp.DATA1 FROM {0} as l 
261 261
                                LEFT OUTER JOIN {1} as sp 
262 262
                                    ON l.UID = SP.UID ;", LineTypes_TABLE, APID_SYMBOL_MAPPING_TABLE);
263 263
                                using (SqlDataReader dr = cmd.ExecuteReader())
......
460 460

  
461 461
            return dt;
462 462
        }
463
        public static bool InsertSymbolMapping(List<Tuple<string, string, string>> datas)
463
        public static bool InsertSymbolMapping(List<Tuple<string, string, string, string>> datas)
464 464
        {
465 465
            Project_Info projectInfo = Project_Info.GetInstance();
466 466
            if (projectInfo.DBType == ID2DB_Type.SQLite)
......
479 479
                                    foreach (var item in datas)
480 480
                                    {
481 481
                                        cmd.Parameters.Clear();
482
                                        cmd.CommandText = string.Format("INSERT OR REPLACE INTO {0} (UID, NAME, APID_SYMBOL) VALUES (@UID, @NAME, @APID_SYMBOL)", APID_SYMBOL_MAPPING_TABLE);
482
                                        cmd.CommandText = string.Format("INSERT OR REPLACE INTO {0} (UID, NAME, APID_SYMBOL, DATA1) VALUES (@UID, @NAME, @APID_SYMBOL, @DATA1)", APID_SYMBOL_MAPPING_TABLE);
483 483
                                        cmd.Parameters.AddWithValue("@UID", item.Item1);
484 484
                                        cmd.Parameters.AddWithValue("@NAME", item.Item2);
485 485
                                        cmd.Parameters.AddWithValue("@APID_SYMBOL", item.Item3);
486
                                        cmd.Parameters.AddWithValue("@DATA1", item.Item4);
486 487
                                        cmd.ExecuteNonQuery();
487 488
                                    }
488 489
                                }
......
527 528
                                    cmd.Parameters.Clear();
528 529
                                    cmd.CommandText = string.Format(@"
529 530
                                    IF EXISTS (SELECT * FROM {0} WHERE UID = '{1}')
530
                                        UPDATE {0} SET NAME = @NAME, APID_SYMBOL = @APID_SYMBOL WHERE UID = @UID
531
                                        UPDATE {0} SET NAME = @NAME, APID_SYMBOL = @APID_SYMBOL, DATA1 = @DATA1 WHERE UID = @UID
531 532
                                    ELSE
532
                                        INSERT INTO {0} (UID, NAME, APID_SYMBOL) VALUES (@UID, @NAME, @APID_SYMBOL)", APID_SYMBOL_MAPPING_TABLE, item.Item1);
533
                                        INSERT INTO {0} (UID, NAME, APID_SYMBOL, DATA1) VALUES (@UID, @NAME, @APID_SYMBOL, @DATA1)", APID_SYMBOL_MAPPING_TABLE, item.Item1);
533 534
                                    cmd.Parameters.AddWithValue("@UID", item.Item1);
534 535
                                    if (string.IsNullOrEmpty(item.Item2))
535 536
                                        cmd.Parameters.AddWithValue("@NAME", DBNull.Value);
......
539 540
                                        cmd.Parameters.AddWithValue("@APID_SYMBOL", DBNull.Value);
540 541
                                    else
541 542
                                        cmd.Parameters.AddWithValue("@APID_SYMBOL", item.Item3);
543
                                    if (string.IsNullOrEmpty(item.Item4))
544
                                        cmd.Parameters.AddWithValue("@DATA1", DBNull.Value);
545
                                    else
546
                                        cmd.Parameters.AddWithValue("@DATA1", item.Item4);
547

  
542 548
                                    cmd.ExecuteNonQuery();
543 549
                                }
544 550
                            }

내보내기 Unified diff

클립보드 이미지 추가 (최대 크기: 500 MB)