三大重要的MySQL查询(上)

日期: 2009-07-20 作者:it168 来源:TechTarget中国 英文

  你几乎可以在网络上随处看到动态网站。无论用于博客还是电子商务的数据包都配置了动态属性。动态网站依赖MySQL数据库从浏览器中提取和插入数据。

  如果你是个初学者,了解下面的简单图解会有助于你理解MySQL在现在的动态网站中所起的作用。在传统的简单静态网站中,你可能会看到如下事件:客户浏览器向服务器请求信息→服务器向浏览器返回HTML代码→浏览器会显示HTML,该HTML就成为了一个网页。而现在,动态网站按如下步骤进行:

  1:请求网页;

  2:服务器执行PHP脚本;

  3:MySQL查询:请求来自SQL的数据;

  4:SQL返回数据;

  5:服务器返回HTML页面。

  客户端浏览器请求一个网页,当服务器收到请求的时候,网页模板执行了PHP脚本,该脚本从MySQL处获取了信息。这些信息会被添加到页面模板中,然后返回到浏览器作为HTML。当你查看源代码的时候,就不会再坎肩PHP脚本了,因为已经在服务器中执行了这些脚本。

  使用动态网页时,可以仅用保存的唯一服务器PHP模板创建上千个URL链接。但是在静态模板中,则需要在服务器中保存上千个HTML文件以创建上千个URL链接。

  如果你了解最重要的MySQL(MySQL五大类参数设置)查询,那么就会很容易和数据库进行沟通,由此便可以创建复杂的PHP网络应用。这样做既可以节约你的时间又能够增加网页效率。在这篇文章中,我们将用INSERT,SELECT和UPDATE命令阐述将要查询MySQL数据库的PHP脚本。

  INSERT MySQL查询命令

  在我们从数据库抓取数据之前,先必须知道如何插入数据。假设你已经创建了带有表格名称的数据库,那么可以用INSERT SQL命令来完成数据插入。我们已经在下面给出了示例。假设你正同时向MySQL数据库的三个不同域中插入三条数据,它看起来:

  Code highlighting produced by Actipro CodeHighlighter (freeware)
  http://www.CodeHighlighter.com/
  –>  INSERT INTO `tablename` (`fieldname1`,`fieldname2`,“,`fieldname3`) VALUES(’$datatobeinsertedtofieldname1′,’$datatobeinsertedtofieldname2′,
  ’$datatobeinsertedtofieldname3′
  用PHP来使用这一查询时,要留意引用符合的确切使用情况和域名及变量的准确拼写。这是PHP编程中常见的错误。

  注意表格名称和查询命令中的域名应该和(`)一起使用,你还要在真实MySQL表格名和脚本表格名之间保持一致性。这样可以区分Linux/PHP和MySQL环境中共同存在的一些东西。

  例如:如果你的表格名称为SongArchives,同样也使用:

 

 Code highlighting produced by Actipro CodeHighlighter (freeware)
  http://www.CodeHighlighter.com/
  –>  INSERT INTO `SongArchives` …..
  最后,用INSERT命令规划一个完整的MySQL查询,下面就是我们推荐的脚本:
  Code highlighting produced by Actipro CodeHighlighter (freeware)
  http://www.CodeHighlighter.com/
  –>< ?php
  //Step 1 Connect to database
  $username = “Your MySQL username here”;
  $password = “Your MySQL password”;
  $hostname = “Hostname”;
  $table = “MySQL Table name where the data will be inserted”;
  $database = “The name of the MySQL database which holds the table”;
  $dbhandle = mysql_connect($hostname, $username, $password)
  or die(”Unable to connect to MySQL”);
  $selected = mysql_select_db($database,$dbhandle)
  or die(”Could not select $database”);
  //Step 2. Insert other PHP scripts here (such as grabbing data from HTML forms, etc)
  //Step 3. Sanitize variables before inserting to database. This will prevent MySQL injection.
  $datatobeinsertedtofieldname1 = mysql_real_escape_string(stripslashes($datatobeinsertedtofieldname1));
  $datatobeinsertedtofieldname2 = mysql_real_escape_string(stripslashes($datatobeinsertedtofieldname2));
  $datatobeinsertedtofieldname3 = mysql_real_escape_string(stripslashes($datatobeinsertedtofieldname3));
  mysql_query(”INSERT INTO `tablename` (`fieldname1`,`fieldname2`,“,`fieldname3`) VALUES(’$datatobeinsertedtofieldname1′,’$datatobeinsertedtofieldname2′,
  ’$datatobeinsertedtofieldname3’)”)
  or die(mysql_error());
  ?>

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

相关推荐