简体   繁体   English

如何在我的代码中添加(ALTER table_name)

[英]How to add (ALTER table_name) in my code

Is it possible to add new field without editing my database but using PHP code or jquery to insert new field in my database, so let's say i have a table name MAIN with (COL1 ,COL2) and in my PHP code/jquery will insert new field (COL 3) in my database. 是否可以在不编辑数据库但使用PHP代码或jquery的情况下添加新字段的情况下,在我的数据库中插入新字段,所以假设我的表名MAIN带有(COL1 ,COL2)并且在我的PHP代码/ jquery中将插入新的字段我的数据库中的字段(COL 3) Is it possible? 可能吗?

$result=("SELECT * FROM main");
$res = $conn->query($result);
if(isset($_POST['Add'])){
    if(empty($_POST['ParentCreate'])){
        echo "Fill up the textbox";
    }else{
        $sql = "ALTER TABLE tablemain ADD COLUMN
'".$_POST['ParentCreate']."' VARCHAR(100) NOT NULL COMMENT '' AFTER
main_one";
    $conn->query($sql);
    echo "New Field created";
}

}
-----------------------------------
<body>
<div id="frm_div">
    <form id="frm1" action="">
        <input type="text" name="ParentCreate" placeholder="ParentCreate" />
        <input type="submit" name="Add" value="Add" />
    </form>
</div>
<div id="result">
<?php
if($res!=""){
while($row=$res->fetch_row()){
    echo $row[0]."<br/>";
    echo $row[1]."<br/>";

}   
 }else{
    echo "Nothing Found";
 }
?>
</div>

First have a look at this: W3 Schools | 首先看一下: W3学校| SQL ALTER SQL更改

Explanation 说明

The SQL Code you are looking for: 您要查找的SQL代码:

ALTER TABLE table_name
ADD column_name datatype [AFTER previous_column_name]

[AFTER] -> optional, default at the end. [AFTER]->可选,默认为末尾。

In your case it's (let's suppose the datatype for COL3 is VARCHAR): 在您的情况下(假设COL3的数据类型为VARCHAR):

ALTER TABLE MAIN
ADD COL3 VARCHAR(30) [AFTER previous_column_name]

If you do not even know how to use mysqli in PHP have a look at the PHP.net MySQLi Documentation (Alternative: php.net/manual/en/book.mysql.php) 如果您甚至都不知道如何在PHP中使用mysqli,请查看PHP.net MySQLi文档 (替代:php.net/manual/en/book.mysql.php)

But watch out! 但是要当心! PHP will drop support for MySQL, so you better use MySQLi. PHP将放弃对MySQL的支持,因此您最好使用MySQLi。

Update 1 - Fire a mysql Query 更新1-触发mysql查询

Get connected with the Host: 与主机建立连接:

$conn = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD) 
        or die("Failed to connect to Database: " . mysql_error());

Select the Database: 选择数据库:

$db = mysql_select_db(DB_NAME, $conn) 
      or die("Failed to select Database: " . mysql_error());

Define your Query: 定义查询:

$sql = "ALTER TABLE tablemain 
        ADD '".$_POST['ParentCreate']."' VARCHAR(100) NOT NULL AFTER main_one";

Fire your Query: 触发您的查询:

mysql_query($sql) or die("Failed adding column: " . mysql_error());

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 Cakephp模型:如何将所有table_name用作单数? - Cakephp Model: How to use all table_name as singular? Silverstripe table_name未设置为类 - Silverstripe table_name not set for class 如何解决在 laravel 中找不到驱动程序(SQL:select * from information_schema.tables where table_schema = my_app and table_name = settings)? - How to resolve 'could not find driver (SQL: select * from information_schema.tables where table_schema = my_app and table_name = settings) in laravel? 将数据作为php变量插入table_name - Inserting data into table_name as php variable 当在另一张表中添加行(列名=行ID)时,如何同时更改表(添加列)? - How to alter a table (add a column) simultaneously when a row is added (column name = row id) in another table? 如何解决此错误“ MySQL错误:1109(MULTI DELETE中的未知表&#39;table_name&#39;)”? - How to resolve this error “MySQL Error: 1109 (Unknown table 'table_name' in MULTI DELETE)”? QueryException:常规错误:1没有这样的表:{table_name}(SQL:从“ {table_name}”中选择*) - QueryException: General error: 1 no such table: {table_name} (SQL: select * from “{table_name}”) 你如何在 Codeigniter 4 的 $this-&gt;db-&gt;table('table_name') 中编写/调用 2 个表 - How dou you write/call 2 tables in $this->db->table('table_name') in Codeigniter 4 如何解决symfony的问题:build-schema错误(未知关系别名table_name) - how to resolve symfony doctrine:build-schema error (Unknown relation alias table_name) Select * from table_name where column_nameِ = &#39;value&#39; - Select * from table_name where column_nameِ = 'value'
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM