我的SQL数据库中有一个DateTime字段,我想写一段时间,但是我该怎么做?
我想将它作为时间戳,所以当用户点击“添加”按钮时,它会将数据添加到其他字段,并将时间戳添加到DateTime字段中,但我不断收到以下错误
从字符串转换日期和/或时间时转换失败。
这是我在CS文件中的当前代码
insertSQL = "INSERT INTO Posts (TopicID, PostBody, PostDate, UserID)"
+ "VALUES ('" + topic + "', '" + newPostText + "', '" + DateTime.Now.ToString() + "', '" + User_ID + "')";
请注意我想尽可能多地显示时间信息。例如23/05/2012 10:58:00 a.m。
答案 0 :(得分:4)
您的实施很容易SQL Injection
。要解决此问题,请关注日期时间问题,使用参数 - http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlcommand.parameters.aspx
这样的事情:
string commandText = "INSERT INTO Posts (TopicID, PostBody, PostDate, UserID)"
+ "VALUES (@Topic, @NewPostText, @PostDate, @UserID)";
using (SqlConnection connection = new SqlConnection(connectionString))
{
SqlCommand command = new SqlCommand(commandText, connection);
command.Parameters.AddWithValue("@Topic", "My Topic");
command.Parameters.AddWithValue("@NewPostText", "Post text goes here");
command.Parameters.AddWithValue("@PostDate", dateObject);
command.Parameters.AddWithValue("@UserID", "UserA");
try
{
connection.Open();
Int32 rowsAffected = command.ExecuteNonQuery();
}
catch (Exception)
{
// Handle Errors
}
}
答案 1 :(得分:-2)
你要求strtotime()?
<?php
$d = date('y-m-d');
echo date('d M Y',strtotime( $d ));
echo "<br>";
echo date('Y-m-d H:i:s'); ?>
叹息,我的错,这是为了Php~