hej jeg har et problem med at få skrevet kun et tidspunkt.
Jeg kopiere noget data fra excel til ms sql server 2005. Men når jeg skriver 19:00 i feltet i excel filen, så skriver den automatisk: 30-12-1899 19:00:00 i sql databasen.
Jeg vil godt have at den kun skulle skrive tidspunktet(19:00).
min collonne hedder tid og det har datatypen varchar(50)
Så jeg kan ikke forstå at den skriver den dato før tidspunktet, og det er altid den samme dato den skriver?
Hvis jeg vil kan jeg godt gå ind manuelt i db og slette datoen så der kun står 19:00.
Men det burde den jo bare skrive automatisk
Og resultatet af det kan du se her:
http://radio.web.surftown.dk/udsendelser.aspxmin kode som kopiere fra excel til sql ser sådan ud:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web.Security;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.Common;
using System.Data.OleDb;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
string excelConnectionString = string.Format(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties=""Excel 8.0;HDR=YES;""", Server.MapPath("database.xls"));
using (OleDbConnection connection =
new OleDbConnection(excelConnectionString))
{
OleDbCommand command = new OleDbCommand
("Select * FROM [Sheet1$]", connection);
connection.Open();
using (DbDataReader dr = command.ExecuteReader())
{
string sqlConnectionString = "Data Source=212.97.133.33;Initial Catalog=kischi2_database;UID=kischi2_radio;PWD=kischi;";
using (SqlBulkCopy bulkCopy =
new SqlBulkCopy(sqlConnectionString))
{
bulkCopy.DestinationTableName = "PROGRAM";
bulkCopy.WriteToServer(dr);
connection.Close();
}
}
}
og min sql statement som trækker det ud ser sådan ud:
- "SELECT * FROM PROGRAM WHERE DATE >= convert(varchar, GETDATE()) AND DATE <= DATEADD(Month, 2, GETDATE())";
Håber nogle kan hjælpe?
Mvh. Adam