关键词:
【中文标题】如何在 JSP 中插入数据后创建表并通过 java 将该数据保存到 mysql【英文标题】:How to create a table after inserting data in JSP and also save that data to mysql through java 【发布时间】:2018-07-15 04:47:24 【问题描述】:我已经建立了一个 jsp 页面,我从用户那里获取输入并从该输入创建一个表,现在我必须在另一个页面上显示该表,并且我必须同时通过 Java 在 mysql 中创建该表。
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Dynamic table</title>
<script src ="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<SCRIPT language="javascript">
var counter=2;
function addRow(tableID)
var dynamicVal = 'row'+counter;
$('#dataTable').append('\
<TR>\
<TD><INPUT type="checkbox" name="'+dynamicVal+'_chk" id="'+dynamicVal+'_chk"/></TD>\
<TD><INPUT type="text" name="'+dynamicVal+'_col" id="'+dynamicVal+'_col" required/></TD>\
<TD>\
<SELECT name="'+dynamicVal+'_datatype" id="'+dynamicVal+'_datatype">\
<OPTION value="int">INT(40)</OPTION>\
<OPTION value="var">VARCHAR(40)</OPTION>\
<OPTION value="char">CHAR(40)</OPTION>\
</SELECT>\
</TD>\
</TR>');
counter++;
function deleteRow(tableID)
/*$('#dataTable').find('[INPUT type="checkbox"]').each(function()\
if($this).prop("checked") == true(
($this).closest('tr').remove();
);*/
$('#dataTable').find('tr').each(function()
if($(this).find('input[type="checkbox"]').prop('checked') == true)
$(this).remove();
);
function createJSON()
var obj =;
obj.table_name=$("input[id=table_name]").val();
var rowcolms = ;
var rowcollection = [];
$('#dataTable').find('tr').each(function()
var row = ;
row.colName=$(this).find('input[type="text"]').val();
row.dataType = $(this).find('select').val();
rowcollection.push(row);
);
obj.tablecolms=rowcollection;
/*var col_name = $(this).val("text");
var datatype = $(this).type("select");
item =
item ["text"] = "col_name" ;
item ["select"] = "datatype";
jsonObj.push(item);
);
$*/
console.log(obj);
function ajaxcall()
$.get.json(
url: Createdatabase,
type:"post",
data: jsonObj,
success: function(data)
console.log(data);
);
</SCRIPT>
</head>
<style>
body
background-color : #D3D3D3;
margin: 0;
padding: 0;
h4
color : #000000;
text-align : center;
font-family: "SIMPSON";
form
width: 300px;
margin: 0 auto;
</style>
<body>
<form>
<h4>Create Your Table</h4>
<form action="servlet/createdatabase" method="post">
Table Name: <input type="text" name="table_name" id="table_name"required>
<input type="submit" value="Submit"><br><br>
<h4>Design Your Table</h4>
<INPUT type="button" value="Add Row" onclick="addRow('dataTable')" />
<INPUT type="button" value="Delete Row" onclick="deleteRow('dataTable')" />
<TABLE id="dataTable" name="dataTable" border="1">
<TR>
<TD><INPUT type="checkbox" name="row1_chk" id="row1_chk"/></TD>
<TD><INPUT type="text" name="row1_col" id="row1_col" required/></TD>
<TD>
<SELECT name="row1_datatype" id="row1_datatype" type="select">
<OPTION value="int">INT(40)</OPTION>
<OPTION value="var">VARCHAR(40)</OPTION>
<OPTION value="char">CHAR(40)</OPTION>.
</SELECT>
</TD>
</TR>
</TABLE><br>
<input type="button" value="Create Table" onclick="ajaxcall'">
</form>
</body>
</html>
所以请谁能告诉我如何在另一个页面上创建这个表,并且以表格的格式创建这个表并在 mysql 中创建这个表?
【问题讨论】:
【参考方案1】:JSP 和 MySQL 的连接:下面的代码首先解释了创建连接。
import java.sql.*;
class MysqlCon
public static void main(String args[])
try
Class.forName("com.mysql.jdbc.Driver");
Connection con=DriverManager.getConnection(
"jdbc:mysql://localhost:3306/sonoo","root","root");
//here sonoo is database name, root is username and password
Statement stmt=con.createStatement();
ResultSet rs=stmt.executeQuery("select * from emp");
while(rs.next())
System.out.println(rs.getInt(1)+" "+rs.getString(2)+" "+rs.getString(3));
con.close();
catch(Exception e) System.out.println(e);
要在第二页显示数据,您需要再次连接到数据库,然后检索数据,有关更多信息,请查看此链接 mysql and jsp
【讨论】:
我不能像你那样分配表名,因为我只从用户那里获取表名,所以我该怎么做? Connection con = DriverManager.getConnection("jdbc:mysql://localhost/rating2", "root", "root");语句 stmt = con.createStatement(); stmt.execute("创建表'" + table_name+ "'(name varchar(20),mobile integer(30))"); //这将创建表,您也可以在创建查询后对其执行操作 你能告诉我连接这些的清单文件吗,因为我无法连接这个这是用于从JSP创建表,也与mysql建立连接
<%@ page import="java.sql.*" %>
<HTML>
<HEAD>
<TITLE>Creating a Table</TITLE>
</HEAD>
<BODY>
<H1>Creating a Table</H1>
<%
Connection connection = null;
try
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
connection = DriverManager.getConnection("jdbc:odbc:data", "userName", "password");
Statement statement = connection.createStatement();
String command = "CREATE TABLE Employees (ID INTEGER, Name CHAR(50));";
statement.executeUpdate(command);
catch (Exception e)
out.println("An error occurred.");
%>
The Employees table was created.
</BODY>
</HTML>
【讨论】:
oracle存储过程创建临时表并插入数据。
...创建表后,在编译阶段数据库中并没有该表。这时向表中插入数据,会提示表不存在。所以,插入语句要赋值到变量里,通过e来执行。参考技术A你这个语法是不对的你createtableasselect的时候是不能指定列的数据类型,因为你是根... 查看详情
如何在 postgres 中创建表并插入具有动态值的数据
】如何在postgres中创建表并插入具有动态值的数据【英文标题】:Howtocreateatableandinsertdatawithdynamicvaluesinpostgres【发布时间】:2020-02-0610:34:22【问题描述】:我正在尝试编写一个表名动态出现的存储过程。还要检查表是否已经存在... 查看详情
oracle中用子查询创建临时表并赋值数据
...ddl)发出后,oracle会隐式的提交事务(commit),因此刚刚插入到临时表的数据被自动删除了。这就是你没查到数据的原因。改成第二种方式就ok了:createglobaltemporarytablemyTableoncommitpreserverowasselecte.empno,e.ename,e.deptnofromempe;追问通过... 查看详情
JDBC 创建表并插入亚马逊红移时出错
】JDBC创建表并插入亚马逊红移时出错【英文标题】:ErrorinJDBCcreatetableandinsertinamazonredshift【发布时间】:2017-03-1501:31:29【问题描述】:我正在使用amazonredshift和R。我得到了连接。我想创建一些数据库表并通过R向其中插入一些数... 查看详情
如何在 google bigquery 数据集中创建动态表并在 tableau 中访问?
】如何在googlebigquery数据集中创建动态表并在tableau中访问?【英文标题】:Howtocreatedynamictablesingooglebigquerydatasetandaccessintableau?【发布时间】:2017-06-0907:04:17【问题描述】:我有一个BigQuery数据库,我想创建动态表。例如:table_2017... 查看详情
创建临时表并使用存储过程将数据加载到其中
...显示在临时表上的数据。下面是我创建的过程。我想知道如何创建一个临时表并通过执行SP将这些数据插入其中 查看详情
在 jsp/servlet 中将调查数据插入 mySql 数据库
】在jsp/servlet中将调查数据插入mySql数据库【英文标题】:InsertingsurveydatatomySqldatabaseinjsp/servlet【发布时间】:2020-07-0310:08:06【问题描述】:我已创建调查表并尝试在数据库中一次插入多个问题,但显示空指针错误。我已动态创建... 查看详情
通过Java在间隔后将数据插入数据库[关闭]
】通过Java在间隔后将数据插入数据库[关闭]【英文标题】:insertdataintodatabaseafteranintervalbyJava[closed]【发布时间】:2013-09-1812:45:51【问题描述】:我需要在java中构建一个程序,它会在每10分钟后将数据插入mysql数据库。只要用户终... 查看详情
如何使用jsp中的bean类在数据库中插入值?
】如何使用jsp中的bean类在数据库中插入值?【英文标题】:Howtoinsertvalueindatabaseusingbeanclassinjsp?【发布时间】:2014-03-0613:22:48【问题描述】:嗨,我想使用jsp形式的bean类在数据库中插入值,我可以这样做,但是每当我在表中插入... 查看详情
如何使用 Elasticbeanstalk 在亚马逊 RDS 中删除表并重新创建?
】如何使用Elasticbeanstalk在亚马逊RDS中删除表并重新创建?【英文标题】:HowtodroptableandrecreateinamazonRDSwithElasticbeanstalk?【发布时间】:2016-08-1715:21:20【问题描述】:我在Amazon上的数据库目前只有少量数据(我正在制作一个Web应用... 查看详情
自动创建表并从 json 文件插入数据
】自动创建表并从json文件插入数据【英文标题】:Automaticallycreatingatableandinsertingdatafromjsonfile【发布时间】:2015-11-1601:48:28【问题描述】:我有将近50个json文件。我想基于这些文件创建Postgres数据库。每个文件包含一个表的数据... 查看详情
django在迁移后插入默认数据(代码片段)
...让RunPython使用它Docs通过一个示例解释了这一点,展示了如何与模型进行通信。来自Docs要创建空的迁移文件,DataMigrations这是如何更新新添加的字段的示例。pythonmanage.pymakemigrations--emptyyourappna 查看详情
hsqldb-2.2.6 创建表并从脚本插入数据
】hsqldb-2.2.6创建表并从脚本插入数据【英文标题】:hsqldb-2.2.6creatingtablesandinsertingdatafromascript【发布时间】:2012-01-0912:31:08【问题描述】:我在Test.sql中有以下命令创建表MY_USER(idint,namevarchar(10));INSERTINTOMY_USERVALUES(1,\'Test1\');INSERTINT... 查看详情
如何在现有表的特定位置插入列?
】如何在现有表的特定位置插入列?【英文标题】:Howtoinsertcolumnsataspecificpositioninexistingtable?【发布时间】:2014-01-2410:29:01【问题描述】:我创建了一个包含85列的表,但我错过了一列。错过的列应该是第57列。我不想删除该表并... 查看详情
hive学习第四课创建表并load数据到表
本章将介绍如何创建一个表以及如何将数据插入。创造表的约定在Hive中非常类似于使用SQL创建表。CREATETABLE语句CreateTable是用于在Hive中创建表的语句。语法和示例如下:语法CREATE[TEMPORARY][EXTERNAL]TABLE[IFNOTEXISTS][db_name.]table_name[(... 查看详情
SQL Server 存储过程创建临时表并插入值
】SQLServer存储过程创建临时表并插入值【英文标题】:SQLServerstoredprocedurecreatingtemptableandinsertingvalue【发布时间】:2013-01-1508:52:04【问题描述】:我正在尝试从不同的表中选择值并将其插入到临时表中。我需要临时表中的标识字... 查看详情
插入后如何在datagridview中立即刷新或显示?
】插入后如何在datagridview中立即刷新或显示?【英文标题】:Howtorefreshorshowimmediatelyindatagridviewafterinserting?【发布时间】:2014-02-1311:03:09【问题描述】:在所有文本框中输入数据后,点击提交按钮后,它不会立即显示在datagridview... 查看详情
如何运行 VBA 循环来格式化每个工作表并创建摘要选项卡
】如何运行VBA循环来格式化每个工作表并创建摘要选项卡【英文标题】:HowdoyourunaVBAlooptoformateachworksheet,andcreateasummarytab【发布时间】:2020-06-0918:24:27【问题描述】:我有一个包含20多个工作表的电子表格,其中列出了服务器。我... 查看详情