MySQL数据库基本操作包括MySQL过程、MySQL声明

MySQL数据库

操纵数据库

查看数据库

show databases;

创建数据库

create database <database_name>;

删除数据库

drop database <database_name>;

使用数据库

use mysql

操纵数据表

查看数据表

show tables;

创建数据表

CREATE TABLE TBL_USER ( # 创建user,table
U_ID INT PRIMARY KEY AUTO_INCREMENT,
U_NAME VARCHAR(32),
U_GENDER VARCHAR(8)
);

删除数据表

DROP TABLE TBL_USER;

ALTER更改表操作

ALTER TABLE TBL_USER ADD COLUMN U_IMAGE BLOB AFTER U_NAME; # 在U_NAME后加新列

SELECT查询操作

select * from <table>;

INSERT插入操作

INSERT TBL_USER(U_NAME, U_GENDER) VALUES ("Lem", "male");

DELETE删除操作

DELETE FROM TBL_USER WHERE U_NAME = 'Lem'; // 这种操作不安全,如果有多个名字

可以通过设置安全模式关闭进行删除

SET SQL_SAFE_UPDATES = 0; // 关闭安全模式
DELETE FROM TBL_USER WHERE U_NAME = 'Lem'
SET SQL_SAFE_UPDATES = 1; // 开启安全模式

如何以一条语句进行删除:事务和存储过程结合,存储过程一次编译,永久存储

DELIMITER**
BEGIN
CREATE PROCEDURE PROC_DELETE_USER(IN UNAME VARCHAR(32))
# PROCEDURE BODY
SET SQL_SAFE_UPDATES = 0;
DELETE FROM TBL_USER WHERE U_NAME = UNAME;
SET SQL_SAFE_UPDATES = 1;

END**

CALL PRO_DELETE_USER('Lee');

UPDATE更新操作

UPDATE TBL_USER SET U_GENDER = 'male' WHERE U_NAME = 'Lem';

数据库建模

建模即是创建数据库,创建表,其它删除,添加操作放到代码里。

MySQL事务

MySQL存储过程

MySQL可以理解为一组特定的语句集合,存储在数据库中,一次编译,永久存在。先创建程序然后通过CALL调用语句。

基本语法:

DELIMITER **
CREATE PROCEDURE <PROCEDURE_NAME>(IN <COLUMN> <DATA_TYE>)
BEGIN
SET SQL_SAFE_UPDATES = 0;
DELETE FROM <TABLE_NAME> WHERE <COLUMN> = <VALUE>;
SET SQL_SAFE_UPDATES = 1;
END**

CALL <PROCEDURE_NAME>(VALUE);

MySQL声明(statement)通过C语言调用

statement可以在一定时间内多次执行处理数据,而且只会在开头解析一次查询语句,而不使用statement直接执行的话会发生多次查询,一般用于传输大文件。每次都是缓冲区先发到管道,然后取结果也是从管道取到结果缓冲区中。

基本语法

  1. 发送数据
mysql_stmt_init(); // 初始化sql连接
mysql_stmt_prepare(); // 使用sql预备语句
mysql_stmt_bind_param();  //绑定发送缓冲区
mysql_stmt_send_long_data(); // 通过块发送数据
mysql_stmt_execute(); // 执行发送
mysql_stmt_close(); // 释放statement
  1. 获取数据

    mysql_stmt_init(); // 初始化sql连接
    mysql_stmt_prepare(); // 使用sql预备语句
    mysql_stmt_bind_param();  //绑定结果缓冲区 
    mysql_stmt_execute(); // 执行发送
    mysql_stmt_store_result(); // 存结果到结果集合中
    mysql_stmt_fectch(); // 取结果
    mysql_stmt_fectch_column; // 取列进行输出即可
    mysql_stmt_close(); // 释放statement
    
posted @ 2024-07-21 11:09  云中锦书来  阅读(1)  评论(0编辑  收藏  举报