0 امتیاز
سلام به همه دوستان
من تو SQL Server یک جدول دارم به نام پرداخت که اسم یکی از ستون هاش مبلغ و یکی دیگه برآورد نام داره، این ستون ها قبلا فرمت nvarchar داشتن و تو گزارش به مشکل می خوردن حالا من می خوام این ستون هارو تبدیل به فرمت bigint بکنم اما اجازه نمیده بخاطر اینکه یک یا چند رکورد من با فرمت nvarchar همینطور مونده و من اون رکوردهارو پیدا نمیکنم تا بتونم مقدارشو تغییر بدم. الان ستون برآورد تغییر دادم اما نمیتونم ستون مبلغ تغییر بدم. حالا سوال من اینجاست که چطور می تونم از ستون مبلغ اون رکوردهایی که فرمتشون nvarchar هست رو پیدا کنم؟
بسته شده

1 پاسخ

+1 امتیاز
 
بهترین پاسخ

سلام

بنظرم اگه سرویش sql رو استپ کنید این تغییر اعمال میشه

اما اگه نشد

این روشو تست کنید تبدیل به int هست

public bool addMeeting(MeetingEntity meetingInfo)
        {
            List<sqlparameter> parameters = new List<sqlparameter>();

            parameters.Add(new SqlParameter("@leadID", meetingInfo.leadID));
            parameters.Add(new SqlParameter("@userID", meetingInfo.userID));
            parameters.Add(new SqlParameter("@type", meetingInfo.type.ToString("F")));
            parameters.Add(new SqlParameter("@location", meetingInfo.location));
            if (meetingInfo.time != DateTime.MinValue)
                parameters.Add(new SqlParameter("@time", meetingInfo.time.ToString("yyyy-MM-dd HH:mm:ss")));
            else
                return false;

            DateTime endTime = meetingInfo.time;
            endTime.AddMinutes(meetingInfo.durationInMin);
            parameters.Add(new SqlParameter("@endTime", endTime.ToString("yyyy-MM-dd HH:mm:ss")));


            int affectedRows = this.executeNonQuery("AddMeeting", parameters.ToArray());
            if (affectedRows == 1)
                return true;
            else if (affectedRows == 0)
                return false;
            else
                throw new Exception("Error: addMeeting");</sqlparameter></sqlparameter>
اینم یه نمونه دیگه
int empId = 0;
if(!int.TryParse(textbox1.Text, out empId))
{
    empId = -1;// or some invalid Id which won't appear in DB
}
mySqlCommand1.Parameters.AddWithValue("@EmployeeID", empId);

اینم دستور دیتابیس

UPDATE dbo.YourTable
SET BigIntColumn = CAST(NVarcharColumn AS BIGINT)
WHERE ISNUMERIC(NVarcharColumn) = 1

 

مشکل شما اینجا مطرح شده

https://dba.stackexchange.com/

 

 

سوال جدید

2,337 سوال

2,871 پاسخ

3,725 دیدگاه

3,920 کاربر

دسته بندی ها

...