개정판 fef8cbe8
sql save test
Change-Id: I29c56ed647ff7b1de2c9872509ec82ae160b8322
DTI_PID/DTI_PID/AppDocData.py | ||
---|---|---|
4 | 4 |
import sys |
5 | 5 |
import os |
6 | 6 |
import sqlite3 |
7 |
import datetime |
|
7 |
from datetime import datetime
|
|
8 | 8 |
from enum import Enum |
9 | 9 |
from PIL import PngImagePlugin, JpegImagePlugin |
10 | 10 |
from PIL import Image |
... | ... | |
1189 | 1189 |
try: |
1190 | 1190 |
folderName = dir.split('/')[-1] |
1191 | 1191 |
if folderName: |
1192 |
nowDate = datetime.datetime.now().strftime('%Y.%m.%d %H:%M')
|
|
1192 |
nowDate = datetime.now().strftime('%Y.%m.%d %H:%M') |
|
1193 | 1193 |
sql = "insert or replace into Projects(Name, [Desc], [Unit], Path, CreatedDate, UpdatedDate) values(?, ?, ?, ?, ?, ?)" |
1194 | 1194 |
param = (folderName, desc, prj_unit, dir, nowDate, nowDate) |
1195 | 1195 |
|
... | ... | |
1235 | 1235 |
conn = sqlite3.connect(prjDatabaseFilePath) |
1236 | 1236 |
with conn: |
1237 | 1237 |
try: |
1238 |
nowDate = datetime.datetime.now().strftime('%Y.%m.%d %H:%M')
|
|
1238 |
nowDate = datetime.now().strftime('%Y.%m.%d %H:%M') |
|
1239 | 1239 |
sql = ''' |
1240 | 1240 |
UPDATE Projects |
1241 | 1241 |
SET UpdatedDate = ?,[Desc]=?,[Unit]=? |
... | ... | |
4375 | 4375 |
else: |
4376 | 4376 |
queries['first'].append(item.toSql()) |
4377 | 4377 |
|
4378 |
""" |
|
4379 |
# Drawing Cascade test |
|
4380 |
if self.project.database.db_type != 'SQLite': |
|
4381 |
''' update drawing's modified time for MSSQL ''' |
|
4382 |
drawings = self.getDrawings() |
|
4383 |
drawing = [drawing for drawing in drawings if self.imgName == os.path.splitext(drawing.name)[0]] |
|
4384 |
if drawing[0]: |
|
4385 |
drawing[0].datetime = datetime.now().strftime('%Y-%m-%d %H:%M:%S') |
|
4386 |
|
|
4387 |
''' hmb backup ''' |
|
4388 |
#from_to = self.get_stream_from_to(drawing_uid = self.activeDrawing.UID) |
|
4389 |
""" |
|
4390 |
|
|
4378 | 4391 |
with self.project.database.connect() as conn: |
4379 | 4392 |
try: |
4380 | 4393 |
# Get a cursor object |
4381 | 4394 |
cursor = conn.cursor() |
4382 | 4395 |
if self.project.database.db_type == 'SQLite': |
4396 |
import timeit |
|
4397 |
_start = timeit.default_timer() |
|
4383 | 4398 |
cursor.execute('begin') |
4384 | 4399 |
|
4385 | 4400 |
sql = "delete from LINE_DATA_LIST where PNID_NO = '{}'".format(drawing_name) |
... | ... | |
4424 | 4439 |
# delete Stream Line List |
4425 | 4440 |
sql = "delete from Stream_Line_List where Drawing_UID='{}'".format(drawing_uid) |
4426 | 4441 |
cursor.execute(sql) |
4442 |
#_stop = timeit.default_timer() |
|
4443 |
#seconds = _stop - _start |
|
4444 |
#print(seconds) |
|
4427 | 4445 |
else: |
4428 | 4446 |
#import timeit |
4429 | 4447 |
#_start = timeit.default_timer() |
4430 | 4448 |
if not isCascade: |
4431 |
#print('origin') |
|
4432 | 4449 |
sql = f"delete from LINE_DATA_LIST where PNID_NO = '{drawing_name}'" \ |
4433 | 4450 |
f"delete from TitleBlockValues where Drawings_UID = '{drawing_uid}'" \ |
4434 | 4451 |
f"delete from LineNoAttributes where Components_UID in " \ |
... | ... | |
4455 | 4472 |
f"delete from Components where Drawings_UID='{drawing_uid}'" \ |
4456 | 4473 |
f"delete from Stream_Line_List where Drawing_UID='{drawing_uid}'" |
4457 | 4474 |
cursor.execute(sql) |
4458 |
#_stop = timeit.default_timer() |
|
4459 |
#seconds = _stop - _start |
|
4460 |
#print(seconds) |
|
4475 |
|
|
4476 |
''' |
|
4477 |
sql = f"delete from Drawings where [UID] = '{drawing_uid}'" |
|
4478 |
cursor.execute(sql) |
|
4479 |
|
|
4480 |
sql = self.project.database.to_sql( |
|
4481 |
'insert into Drawings(UID, [NAME], [DATETIME], [OCCUPIED], [Image]) values(?, ?, ?, ?, ?)') |
|
4482 |
param = tuple([str(drawing[0].UID), drawing[0].name, drawing[0].datetime, os.environ['COMPUTERNAME'], None]) |
|
4483 |
cursor.execute(sql, param) |
|
4484 |
_stop = timeit.default_timer() |
|
4485 |
seconds = _stop - _start |
|
4486 |
print(seconds) |
|
4487 |
''' |
|
4461 | 4488 |
|
4462 | 4489 |
progress = 0 |
4463 | 4490 |
length = len(queries['first']) + len(queries['second']) |
DTI_PID/DTI_PID/Commands/SaveWorkCommand.py | ||
---|---|---|
82 | 82 |
|
83 | 83 |
@staticmethod |
84 | 84 |
def save_to_xml(allItems): |
85 |
""" no more used """ |
|
85 | 86 |
""" save recognized items to xml file """ |
86 | 87 |
import XmlGenerator as xg |
87 | 88 |
from AppDocData import AppDocData |
내보내기 Unified diff