当前位置:首页 > PHP教程 > php应用 > 列表

在PHP中调用MySQL数据库的基本操作代码详解

发布:smiling 来源: PHP粉丝网  添加日期:2020-02-25 20:11:09 浏览: 评论:0 

本文的主要讲述的是在PHP中调用MySQL数据库的基本操作代码以及解释,具有一定的参考价值,有需要的朋友一定要好好看看!

PHP-MySQL基本操作

  1. <?php 
  2.  
  3. // 1.防止页面中文乱码 
  4.  
  5. header("content-type:text/html;charset=utf-8"); 
  6.  
  7.   
  8.  
  9. // 链接数据库 
  10.  
  11. @$conn = new mysqli('localhost''root'''); 
  12.  
  13. echo $conn == true ? '数据库连接成功' : '数据库连接失败'
  14.  
  15.   
  16.  
  17. // 2.连接到MySQL后设置字符集(防止存入中文乱码) 
  18.  
  19. mysqli_set_charset($conn'utf8'); 
  20.  
  21.   
  22.  
  23. // 创建数据库 
  24.  
  25. $createDatabaseSql = "create database ProsperLee01 charset utf8"
  26.  
  27. // 删除数据库 
  28.  
  29. $dropDatabaseSql = "drop database ProsperLee01"
  30.  
  31. // 查询数据库 
  32.  
  33. $showDatabaseSql = "show databases"
  34.  
  35. // 查询创建的数据库信息 
  36.  
  37. $showCreateDatabaseSql = "show create database ProsperLee01"
  38.  
  39. // 修改数据库(不能修改数据库的名字,只能修改字符集和校对集)语法:alter database 数据库 character set=新的字符集 collate=新的校对集 
  40.  
  41. $alterDatabaseSql1 = "alter database ProsperLee01 character set=gbk collate=gbk_Chinese_ci"
  42.  
  43. $alterDatabaseSql2 = "alter database ProsperLee01 charset=utf8 collate=utf8_general_ci"
  44.  
  45. // 查询字符集 
  46.  
  47. $showCharsetSql = "show charset"
  48.  
  49. // 查询校对集 
  50.  
  51. $showCollationSql = "show collation"
  52.  
  53. // 使用数据库 
  54.  
  55. $useDatabaseSql = "use ProsperLee01"
  56.  
  57. // 创建数据表 语法 CREATE TABLE 库名 表名 (字段名 字段类型 字段选项, 字段名 字段类型 字段选项···) 表选项; (表选项:表字符集(charset=utf8)和数据引擎(engine=引擎)) 
  58.  
  59. $createTableSql =<<<sss 
  60.  
  61.     CREATE TABLE `prosperlee01`.`Lee01` ( 
  62.  
  63.         `name` varchar(20) DEFAULT '小明同学' NOT NULL COMMENT '姓名'
  64.  
  65.         `sex` varchar(5) NULL COMMENT '性别'
  66.  
  67.         `age` int(2) NULL COMMENT '年龄'
  68.  
  69.         `index` int NOT NULL AUTO_INCREMENT COMMENT '序号'
  70.  
  71.         `id` varchar(8) NOT NULL COMMENT 'id'
  72.  
  73.         PRIMARY KEY (`index`, `id`) 
  74.  
  75.     ) ENGINE=InnoDB DEFAULT CHARSET=utf8 
  76.  
  77. sss; 
  78.  
  79. // 查询数据表 
  80.  
  81. $showTablesSql = "show tables"
  82.  
  83. // 查看数据表结构 
  84.  
  85. $descTableSql = "desc lee01"
  86.  
  87. // 查询创建的数据表 
  88.  
  89. $showCreateTableSql = "show create table Lee01"
  90.  
  91. // 修改表名 alter table 旧表名 rename [to] 新表名 
  92.  
  93. $alterTableNameSql = "alter table lee01 rename to newlee01"
  94.  
  95. // 添加新字段 
  96.  
  97. $alterTableAddFieldSql = "alter table lee01 add realname varchar(50) not null default '用户名' comment '真实姓名'"
  98.  
  99. // 删除字段 alter table 表名 drop column 字段名 
  100.  
  101. $alterTableDropFieldSql = "alter table lee01 drop column phone"
  102.  
  103. // 修改表的字段类型   ALTER TABLE 表名 MODIFY COLUMN 字段名 字段类型定义; 
  104.  
  105. $alterTableModifyFieldSql = "ALTER TABLE lee01 MODIFY COLUMN id VARCHAR(32)"
  106.  
  107. // 修改表的字段名(修改后原始字段存的值不会变,新存入的值不填写变成默认值) alter table 表名 change 原字段名  新字段名  字段的类型 
  108.  
  109. $alterTableChangeFieldSql = "ALTER TABLE lee01 change realname phone VARCHAR(11) default '01234567890' comment '电话号'"
  110.  
  111. // 插入数据 INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....) 
  112.  
  113. $insertIntoDataSql1 = "INSERT INTO Lee01 (`sex`,`age`,`id`) VALUES ('女',20,'88888888')"
  114.  
  115. $insertIntoDataSql2 = "INSERT INTO Lee01 (`name`,`sex`,`age`,`id`) VALUES ('Lee','女',20,'66666666')"
  116.  
  117. $insertIntoDataSql = <<<sss 
  118.  
  119.     INSERT INTO Lee01 ( `name`, `sex`, `age`, `id` ) 
  120.  
  121.     VALUES 
  122.  
  123.         ( '张三''女', 16, '12345678' ), 
  124.  
  125.         ( '李四''男', 18, '87654321' ), 
  126.  
  127.         ( '王五''女', 20, '22222222' ), 
  128.  
  129.         ( '赵六''女', 21, '11111111' ), 
  130.  
  131.         ( '八爷''男', 26, '14725836' ), 
  132.  
  133.         ( '九少''男', 16, '66666666' ) 
  134.  
  135. sss; 
  136.  
  137. // 查询语句 
  138.  
  139. $selectDataSql1 = "select * from lee01"
  140.  
  141. $selectDataSql2 = "select * from lee01 where sex = '女' and age = '20'"
  142.  
  143. $selectDataSql3 = "select * from lee01 where age = '20' or age = '16'"
  144.  
  145. $selectDataSql4 = "select * from lee01 where not age = '20'"
  146.  
  147. $selectDataSql5 = "select name,age from lee01 where age = '20' or age = '16'"
  148.  
  149. // in 查询指定index (无则跳过) 
  150.  
  151. $selectDataSql6 = "select name,age from lee01 where `index` in (1,2,4,6)"
  152.  
  153. // between 语法:select 查询字段 from 表名 where 字段 between 最小值 and 最大值; 
  154.  
  155. $selectDataSql7 = "select name from lee01 where `index` between 2 and 5"
  156.  
  157. // 查询数据量(启用别名) 
  158.  
  159. $selectDataSql8 = "select count(`index`) as count from lee01"
  160.  
  161. // like 模糊查询(注:直接写字符,严格匹配)%匹配任何字符 
  162.  
  163. $selectDataSql9 = "select * from lee01 where name like '%三%'"
  164.  
  165. // group by (只能查看分组后的数量,而不能查看分组后的信息) 
  166.  
  167. $selectDataSql10 = "select count(sex),sex from lee01 group by sex"
  168.  
  169. // 查询性别数量大于2个的性别的数量 
  170.  
  171. $selectDataSql11 = "select count(sex) as sexnum,sex from lee01 group by sex having sexnum>2"
  172.  
  173. // 查询正序(asc)倒序(desc) 
  174.  
  175. $selectDataSql12 = "select * from lee01 order by id asc"
  176.  
  177. // 分页查询 (limit 下标,查询数量) 
  178.  
  179. $selectDataSql13 = "select * from lee01 order by `index` asc limit 0,2"
  180.  
  181. $selectDataSql14 = "select * from lee01 order by `index` asc limit 2,2"
  182.  
  183. $selectDataSql15 = "select * from lee01 order by `index` asc limit 4,2"
  184.  
  185. // 删除数据表 
  186.  
  187. $dropTableSql = "drop table lee01"
  188.  
  189. // 清空数据表(同时删除自增字段的定义) 
  190.  
  191. $truncateTableSql1 = "truncate table lee01"
  192.  
  193. // 清空数据表(删除表中的所有行,一行一行的删)(delete 保留原有自增字段,再次创建不占用删除字段) 
  194.  
  195. $deleteTableSql1 = "delete from lee01"
  196.  
  197. // 按条件删除 delete from 表名 [where条件] [order排序] [limit限定](删除范围数据可能会用到order、limit) 
  198.  
  199. $deleteTableSql2 = "delete from lee01 where phone = '用户名'"
  200.  
  201. // 修改数据(无条件全改) 
  202.  
  203. $updateSetSql = "update lee01 set name = 'ProsperLee',age=23 where id = '87654321'"
  204.  
  205.   
  206.  
  207. // 使用数据库 
  208.  
  209. mysqli_select_db($conn'ProsperLee01'); // 使用数据库 
  210.  
  211.   
  212.  
  213. // 3.设置通信编码 
  214.  
  215. mysqli_query($conn"set names utf8"); 
  216.  
  217.   
  218.  
  219. // 执行sql语句 
  220.  
  221. $result = mysqli_query($conn$selectDataSql1); 
  222.  
  223. var_dump($result); 
  224.  
  225.   
  226.  
  227. /** 
  228.  
  229.  * fetch_assoc() 每次拿1条数据 
  230.  
  231.  * fetch_all() 拿出全部数据 
  232.  
  233.  */ 
  234.  
  235. $showData = $result->fetch_all(); 
  236.  
  237. var_dump($showData); 
  238.  
  239.  //phpfensi.com 
  240. // 关闭数据库 
  241.  
  242. mysqli_close($conn); 

Tags: MySQL数据库

分享到: