建立学生选课表 mysql 语句_MySQL常用SQL语句(Python实现学生、课程、选课表增删改查)...
以基本的學(xué)生選課為例,建立選課數(shù)據(jù)庫(kù),學(xué)生、班級(jí)、選課信息三張表,并分別對(duì)表進(jìn)行插刪改操作:
import?MySQLdb
try:
conn?=?MySQLdb.connect(host?=?'localhost',?user?=?'root',?passwd?=?'root',?db?=?'xuanke',?port?=?3306)
cur?=?conn.cursor()
cur.execute("CREATE?DATABASE?xuanke")
cur.execute("CREATE?TABLE?Student?(Sno?VARCHAR(9)?PRIMARY?KEY,?Sname?VARCHAR(20)?UNIQUE,?Ssex?VARCHAR(2),?Sage?SMALLINT,?Sdept?VARCHAR(20))")
cur.execute("CREATE?TABLE?Course?(Cno?VARCHAR(4)?PRIMARY?KEY,?Cname?VARCHAR(40),?Cpno?VARCHAR(4),?Ccredit?SMALLINT,?FOREIGN?KEY?(Cpno)?REFERENCES?Course(Cno))")
cur.execute("CREATE?TABLE?SC?(Sno?VARCHAR(9),?Cno?VARCHAR(4),?Grade?SMALLINT,?PRIMARY?KEY?(Sno,?Cno),?FOREIGN?KEY?(Sno)?REFERENCES?Student(Sno),?FOREIGN?KEY?(Cno)?REFERENCES?Course(Cno))")
cur.execute("INSERT?INTO?Student?VALUES?('200215121',?'Stephen?Zhou',?'M',?'20',?'CS')")
cur.execute("INSERT?INTO?Student?VALUES?('200215122',?'Stan?Qian',?'M',?'23',?'CS')")
cur.execute("INSERT?INTO?Student?VALUES?('200215123',?'Linda?Fan',?'F',?'21',?'MA')")
cur.execute("INSERT?INTO?Student?VALUES?('200215125',?'Zac?Gu',?'M',?'26',?'IS')")
cur.execute("INSERT?INTO?Course?VALUES?('2',?'Math',?Null,?'2')")
cur.execute("INSERT?INTO?Course?VALUES?('6',?'Data?Processing',?Null,?'2')")
cur.execute("INSERT?INTO?Course?VALUES?('7',?'PASCAL',?'6',?'4')")
cur.execute("INSERT?INTO?Course?VALUES?('5',?'Data?Structure',?'7',?'4')")
cur.execute("INSERT?INTO?Course?VALUES?('1',?'Database',?'5',?'4')")
cur.execute("INSERT?INTO?Course?VALUES?('3',?'Information?System',?'1',?'4')")
cur.execute("INSERT?INTO?Course?VALUES?('4',?'Operating?System',?'6',?'3')")
cur.execute("INSERT?INTO?SC?VALUES('200215121',?'1',?'92')")
cur.execute("INSERT?INTO?SC?VALUES('200215121',?'2',?'85')")
cur.execute("INSERT?INTO?SC?VALUES('200215121',?'3',?'88')")
cur.execute("INSERT?INTO?SC?VALUES('200215122',?'2',?'90')")
cur.execute("INSERT?INTO?SC?VALUES('200215122',?'3',?'80')")
cur.execute("INSERT?INTO?Student?VALUES('200215128',?'Cuan?Qu',?'M',?'22',?'IS')")
cur.execute("UPDATE?Student?SET?Sage?=?'23'?WHERE?Sno?=?'200215128'")
cur.execute("UPDATE?Student?SET?Sage?=?Sage?+?7")
cur.execute("DELETE?FROM?Student?WHERE?Sno?=?'200215128'")
cur.close()
conn.commit()
conn.close()
except?MySQLdb.Error,?e:
print?'Mysql?error?msg:?',?e
顯示數(shù)據(jù)庫(kù):
顯示所建表:
顯示學(xué)生表:
顯示課程表:
顯示選課信息表:
注:以上python程序中插入操作需要一步步運(yùn)行,特別是課程表中‘Cpno’為先選課程,其為課程表外鍵并與Course.Cno參照,必須按順序依次插入。
總結(jié)
以上是生活随笔為你收集整理的建立学生选课表 mysql 语句_MySQL常用SQL语句(Python实现学生、课程、选课表增删改查)...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: python 线程 的类库_python
- 下一篇: java解析json_JAVA解析JSO
