操纵数据库的语言,基于功能划分为4类:
数据定义:DDL(Data Definition Language)库的创建删除、表的创建删除等
数据操纵:DML(Data ManipulationLanguage)新增数据、删除数据、修改数据等
数据控制:DCL(Data ControlLanguage)新增用户、删除用户、密码修改、权限管理等
数据查询:DQL(Data QueryLanguage)基于需求查询和计算数据(分组group by聚合函数:求和sum求平均值avg求最小值min求最大值max求数量count)(排序order by分页limit)
启动MySQL:
以管理员身份打开命令窗口,输入: net start mysql
DBeaver连接数据库总报错Public Key Retrieval is not allowed:
SQL语法特征:1.大小写不敏感2.分号;结尾3.支持注释(单行注释--或者#,多行注释/**/)
中括号代表可写可不写
python操作mysql数据插入:
小练习1:通过python代码把数据写入数据库中(写)
1.DBeaver建表结构:
create databpy_sql;#建数据库
use py_sql;#使用这个数据库
#建表结构
create table orders(
order_date date,
order_id varchar(255),
money int,
province varchar(10)
)
2.pycharm中写连接数据库的方式,使用哪个数据库,执行插入语句:
conn=Connection(
host="localhost",
port=3306,
user="root",
password="12345",
autocommit=True
)
cursor=conn.cursor()
conn.select_db("py_sql")
for record in all_data:
sql=f"insert into orders(order_date,order_id,money,province) values('{record.date}','{record.order_id}',{record.money},'{record.province}')"
# print(sql)
cursor.execute(sql)
conn.close()
小练习2:反向读取数据库中的语句到python(读)
#读
db_cursor = conn.cursor()
db_cursor.execute("SELECT * FROM orders")
rows = db_cursor.fetchall()
for row in rows:
print(row)
with open('D:/1.txt','w',encoding='UTF-8') as file:
for row in rows:
file.write(str(row))
file.write("\n")
file.flush()
file.close()
allowPublicKeyRetrieval=true
:这个参数告诉JDBC驱动器在尝试连接时允许公钥检索。