提前感谢您提供的任何帮助。我目前正在使用Visual Studio 2015构建一个程序,并且我正在尝试编写一个方法来执行我已经建立的INSERT INTO
表。
当我运行我的代码时,我得到了
我的控制台中的抛出异常:System.Data.dll中的“System.Data.SqlClient.SqlException”“
异常消息。我是SQL的新手,所以任何基本的原则和建议都将不胜感激!
private void InsertIntoAccount(int number, string type, string date)
{
using (SqlConnection connection1 = new SqlConnection(connectionString))
{
//Establish a connection
connection1.Open();
string sqlstring = "INSERT INTO Account (AccountNumber, Type, DateOpened) VALUES (@number, @type, @date)";
SqlCommand cmd = new SqlCommand(sqlstring, connection1);
//Fill in parameters
cmd.Parameters.Add("@number", SqlDbType.Int).Value = number;
cmd.Parameters.Add("@type", SqlDbType.VarChar, 100).Value = type;
cmd.Parameters.Add("@date", SqlDbType.VarChar, 100).Value = date;
//Execute
//<REMOVED> cmd.CommandType = CommandType.Text;
cmd.ExecuteNonQuery();
connection1.Close();
}
}
答案 0 :(得分:1)
尝试
cmd.CommandTimeout = 300;
cmd.CommandType = CommandType.Text;
同样使用 DateOpened 字段,是varchar类型的字段,还是类型为date / datetime的字段
如果是date / datetime类型,请尝试将您的字符串转换为日期对象,然后将该行更改为
cmd.Parameters.Add("@date", SqlDbType.Date, 100).Value = date;
答案 1 :(得分:0)
确保您的数据库数据类型正确无误。您有一个日期字段,但您正在为数据类型为VARCHAR分配值。尝试将第3个参数声明更改为:
cmd.Parameters.Add("@date", SqlDbType.Date).Value = date;
答案 2 :(得分:0)
您的连接字符串值很可能不正确。该错误表示您使用连接字符串指定的DB中没有表import matplotlib.pyplot as plt
import numpy as np
np.random.seed(123456)
import pandas as pd
def align_labels(labels):
for text in labels:
x, y = text.get_position()
h_align = 'left' if x > 0 else 'right'
v_align = 'bottom' if y > 0 else 'top'
text.set(ha=h_align, va=v_align)
df = pd.DataFrame(3 * np.random.rand(4, 4), index=['a', 'b', 'c', 'd'],
columns=['x', 'y','z','w'])
plt.style.use('ggplot')
colors = plt.rcParams['axes.color_cycle']
fig, axes = plt.subplots(nrows=2, ncols=2)
for ax, col in zip(axes.flat, df.columns):
artists = ax.pie(df[col], autopct='%.2f', pctdistance=1.05, colors=colors)
ax.set(ylabel='', title=col, aspect='equal')
align_labels(artists[-1])
fig.legend(artists[0], df.index, loc='center')
plt.show()
。
在您的示例中,您将字符串值作为连接字符串传递,假设您已在代码中的某处定义它。
连接字符串:
Account
密码= MYPASSWORD;
示例:
Server=myServerName\myInstanceName;Database=myDataBase;User Id=myUsername;
交叉检查此变量。初始目录应该是数据库名称。
更好的方法是从connectionString="Data Source=(localdb)\MSSQLLocalDB; Initial Catalog=test; Integrated Security=True;"
读取连接字符串。
web.config