老师我查看了student7里的name是有唯一约束名,但是删不掉
# coding=utf-8 import pymysql # pip install cryptography # 创建连接 con = pymysql.connect(host='localhost',user='root',database='python_db',password='123456',port=3306) print(con) # 创建游标对象 cur = con.cursor() # 编写创建表的sql sql=""" creat table t_student( sno int primary key auto_increment, sname varchar(30) not null, age int(2), score float(3,1) ); """ try: # 执行创建标的sql cur.execute(sql) print('创建表成功') except Exception as e: print(e) print('创建表失败') finally: # 关闭连接 con.close()
报错:
<pymysql.connections.Connection object at 0x0000014B8DE3C908> (1064, "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'creat table t_student(\n sno int primary key auto_increment,\n sname varchar' at line 1") 创建表失败
老师我这个是怎么回事哦?搞不懂了
一直连接不上,也看不懂,也是按照视频一步步来的
老师,您好。删除索引这一节课中,讲到删除索引会有两种方法,第二种方法实际操作时,并不成功。想知道该如何解决?(第二种图蓝色箭头那句话解释有疑问)
老师,MySQL安装时没有安装路径可以选择吗
老师,我这个怎么回事
老师,连接不上Mysql是怎么回事
老师,我创建约束的时候我查看表也有索引,所以约束和索引的区别是什么
首先,课上最后的那个代码我没有办法成功运行,如果只select department_id能正常显示,加上last_name或者salary就会报错,具体情况跟前几楼一样
其次,视频里查询结果是错的,我研究出了下面的方法
但这样没法把department_id为空的那行显示出来,请问应该如何在这个代码的基础上加上那行数据?(或者说有什么更好的方法)
老师,MySQL安装版和zip版有什么不同,两个安装出来是功能一样的软件吗,是不是只需要安装一个就够了?
问题:当表中设置了自增约束,插入数据时,数据插入失败,自增约束的字段还是会自动增加是吗?
请问,是否有方法当数据添加失败时,自增约束不自动增加?
老师,请问,我这里运行的结果,为什么deptno没有像资料中的那样相同的排在一起呢
没太明白为什么函数传入uname参数需要在两个单引号中间加一个双引号??
login1('王五" and 1=1 #','') #实际uname结果是:王五" and 1=1 # #完整代码 import pymysql def login1(uname,pwd): # 登录数据库 con = pymysql.connect(host='localhost', port=3306, user='root', password='root', db='sxt1', charset='utf8') # 获取工具cursor cursor = con.cursor() # 编写SQL语句 print(uname) mysql = f'SELECT * from t_user t WHERE t.name="{uname}" and t.pwd="{pwd}";' # 执行SQL语句 cursor.execute(mysql) us = cursor.fetchall() print(us) # 结束工具cursor cursor.close() # 断开链接 con.close() if __name__ == '__main__': login1('王五" and 1=1 #','')
#事务有四种隔离性 隔离性越低 数据库支持的高并发就越好 但同时出现的问题也多 脏读 不可重复读 幻读 #查看隔离级别 select @@transaction_isolation; #设置隔离级别 set session transaction isolation level read uncommitted #这个三个问题都有 set session transaction isolation level read committed; #这个可以解决脏读的问题 但是出现了不可重复读 set session transaction isolation level repeatable read; #这个解决幻读 set session transaction isolation level serializable; #这是最高级别的 并发支持太低 不使用 #开启事务 start transaction; select * from account; #转账 update account set balance=balance-200 where username="张三"; update account set balance=balance+200 where username="李四"; #插入一条数据 insert into account (username,balance) values ("赵六",6000); #提交 commit;
老师 对于这个幻读和不可重复读 有点不清楚 不明白到底是什么意思 比如说不可重复读 我在navicat中进行的转账 同时我也提交了 说明在数据库中数据就进行了更新 我在doc窗口里进行第一次查询 由于navicat之前没有提交 所以查到是之前的数据 但是当navicat进行了提交 那么我就应该查询到已经修改的数据啊 但是为什么会出现不可重复读 这个问题
SELECT LAST_NAME,(SYSDATE()-HIRE_DATE)/7 AS WEEKS FROM employees WHERE DEPARTMENT_ID = 90;
SELECT LAST_NAME,(SYSDATE()-HIRE_DATE)/7 FROM employees WHERE DEPARTMENT_ID = 90;
这两个AS WEEKS的作用是什么,为什么运行结果不一样
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637