c920b3b86923c821accc04b65b62080a969d04bb
[people/mcb30/basetools.git] / Source / Python / Table / TableFile.py
1 ## @file\r
2 # This file is used to create/update/query/erase table for files\r
3 #\r
4 # Copyright (c) 2008, Intel Corporation\r
5 # All rights reserved. This program and the accompanying materials\r
6 # are licensed and made available under the terms and conditions of the BSD License\r
7 # which accompanies this distribution.  The full text of the license may be found at\r
8 # http://opensource.org/licenses/bsd-license.php\r
9 #\r
10 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
11 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
12 #\r
13 \r
14 ##\r
15 # Import Modules\r
16 #\r
17 import Common.EdkLogger as EdkLogger\r
18 from Table import Table\r
19 \r
20 ## TableFile\r
21 #\r
22 # This class defined a table used for file\r
23\r
24 # @param object:       Inherited from object class\r
25 #\r
26 class TableFile(Table):\r
27     def __init__(self, Cursor):\r
28         self.Cur = Cursor\r
29         self.Table = 'File'\r
30     \r
31     ## Create table\r
32     #\r
33     # Create table File\r
34     #\r
35     # @param ID:        ID of a File\r
36     # @param Name:      Name of a File\r
37     # @param ExtName:   ExtName of a File\r
38     # @param Path:      Path of a File\r
39     # @param FullPath:  FullPath of a File\r
40     # @param Model:     Model of a File\r
41     #\r
42     def Create(self):\r
43         SqlCommand = """create table IF NOT EXISTS %s (ID SINGLE PRIMARY KEY,\r
44                                                        Name VARCHAR NOT NULL,\r
45                                                        ExtName VARCHAR,\r
46                                                        Path VARCHAR,\r
47                                                        FullPath VARCHAR NOT NULL,\r
48                                                        Model INTEGER DEFAULT 0\r
49                                                       )""" % self.Table\r
50         Table.Create(self, SqlCommand)\r
51 \r
52     ## Insert table\r
53     #\r
54     # Insert a record into table File\r
55     #\r
56     # @param ID:        ID of a File\r
57     # @param Name:      Name of a File\r
58     # @param ExtName:   ExtName of a File\r
59     # @param Path:      Path of a File\r
60     # @param FullPath:  FullPath of a File\r
61     # @param Model:     Model of a File\r
62     #\r
63     def Insert(self, ID, Name, ExtName, Path, FullPath, Model):\r
64         SqlCommand = """insert into %s values(%s, '%s', '%s', '%s', '%s', %s)""" \\r
65                                            % (self.Table, ID, Name, ExtName, Path, FullPath, Model)\r
66         Table.Insert(self, SqlCommand)\r