您的位置:首页 > 数据库

简单sql查询接口(输入user:pwd@host即可进行sql语句操作)

2010-04-09 09:35 676 查看
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>

<a href ="http://www.w3school.com.cn/sql/sql_autoincrement.asp" target=_blank>
sql语法</a><BR>
查看字段类型 SHOW FULL COLUMNS from tab_name <BR>
//建表(mysql,自增d_ID,主键) CREATE TABLE districts (d_id int NOT NULL AUTO_INCREMENT,d_name char(60) NOT NULL,PRIMARY KEY (d_id)
)<BR>
//增加一列 alter table tabelname add columnname varchar2(8) NULL<BR>
//增加人名 insert into `address2` (`sname`) values('人名')<BR>
//修改 update `address2` set `sname`='人名' where id='23'<BR>
//查询所有的表名 SHOW TABLES FROM u656b1_db
<BR>查询编码
show variables like 'character_set_%'

<form action="" method="post">
<textarea name=c_str style="width:100%; height:50px;" title="user:pwd@host">
<?PHP
$c_str = "";

if (isset($_POST['c_str']))
$c_str = $_POST['c_str'];

if ($c_str != "")
{
echo $c_str;
}
?>
</textarea><BR>
<textarea name="sql" id="sql" style="width:100%; height:100px;" onkeypress="if(event.keyCode == 10)submit.click();" title="sql">
<?PHP
$sql = "";
if (isset($_POST['sql']))
$sql = str_replace('//','',trim($_POST["sql"]));//去除php自动给'加上的/

if ($sql != "")
{
echo $sql;
}
?>
</textarea>

<input type="submit" id="submit" value="查询">

<?php

$GLOBALS["connect"] = "";
error_reporting(7);//7all,0no
ini_set('display_errors', '1');

if (count($_POST) == 0)
{
html_end('请输入查询和连接字符串');
}else
{
runsql($c_str, $sql);
}

function html_end($str)
{
if (isset($str))echo "<br>". $str;
exit('</form></body></html>');
}

function c_db($c_str)
{
if ($c_str != "")
{
$u_i = strpos($c_str,":");
$user = substr($c_str,0, $u_i);
$p_i = strpos($c_str,"@");
$pwd = substr($c_str,$u_i + 1, $p_i - $u_i - 1);
$host = substr($c_str,$p_i + 1);

if ( !($GLOBALS["connect"] = @mysql_connect($host,$user,$pwd)) )
{
html_end("数据库连接失败!请核对连接字符串.<BR>" . mysql_error());
}
list_db_name();
}else
{
html_end("请依格式输入数据库连接字符串.");
}
}

function list_db_name()
{
//列出数据库名

$dbs = mysql_list_dbs($GLOBALS["connect"]);
$rows = mysql_num_rows($dbs);
$i = 0;

echo '<select id=db_name name=db_name>';
echo '<option value="">请选择数据库</option>';

while($i <$rows)
{
echo '<option value="'
. mysql_tablename($dbs , $i)
. '" '. ( mysql_tablename($dbs , $i) == $_POST['db_name'] ? 'selected':'') . '>'
. ($i+1).'. '. mysql_tablename($dbs , $i) ."</option>";
$i++;
}

echo '</select>';
}

function list_table_name($db_name)
{
if (trim($db_name) == "") return 0;
//列出表名
$dbs = mysql_list_tables($db_name,$GLOBALS["connect"]);
$rows = mysql_num_rows($dbs);
$i = 0;
echo '<select id=table_name name=table_name oncontextmenu="'
."document.getElementById('sql').value += ' ' + "
.'this.options[this.selectedIndex].value;">';
echo '<option value="">' . $db_name .'库中存在表</option>';
$table_name=$_POST['table_name'];
while($i <$rows)
{
echo '<option value="' .mysql_tablename($dbs, $i) .'" '
. ( mysql_tablename($dbs, $i) == $table_name ? 'selected':'')
. '>'. ($i+1).'. ' . mysql_tablename($dbs, $i) ."</option>";
$i++;
}
echo '</select>';
list_cell_name($db_name, $table_name);
}

function list_cell_name($db_name, $table_name)
{
if ((trim($db_name) == "")||(trim($table_name) == "")) return 0;
//列出字段名
$fields=mysql_list_fields($db_name,$table_name,$GLOBALS["connect"]);
$frows = mysql_num_fields($fields);
echo '<select id=field_name name=field_name>';
echo '<option value="">' . $table_name .'表中存在字段</option>';

$j=0;
while($j<$frows){
echo '<option value="' .mysql_field_name($fields, $j) .'">'. (1+$j).'. '. mysql_field_name($fields, $j) ."</option>";
$j++;
}
echo '</select>';
}

function runsql($c_str, $sql)
{
c_db($c_str);
if ( $sql == "")html_end('请输入查询字符串.');
if (($db_name = $_POST['db_name'])=="")html_end('请选择数据库.');
list_table_name($db_name);
echo '<BR>原始查询字符串:<br>' . $sql . "<BR>";
mysql_select_db($db_name, $GLOBALS["connect"]) or html_end("选择数据库时出错:<BR>" . mysql_error());
$result = mysql_query($sql, $GLOBALS["connect"]) or html_end("执行sql语句时出错:<BR>" .mysql_error());

echo '<BR><pre>';
while ( $ResultRow = mysql_fetch_array($result, MYSQL_ASSOC) )
{
print_r( $ResultRow ) or html_end('print_r出错:<BR>' . mysql_error());
echo "<BR><BR>";
}

echo '</pre><BR>打印完成.';
mysql_close($GLOBALS["connect"]);
}

?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐