PDA

View Full Version : تبدیل AuotoNumber



مهدی هادیان
پنج شنبه 26 فروردین 1389, 19:35 عصر
با سلام
من میخوام دستور update را بنویسم و برای آن بایستی شماره id را داشته باشم.فیلدid از نوع auotoNumber در بانک Accessمی باشد.
چگونه می توانم این کار را انجام دهم؟


string

oql = "SELECT idbook_number FROM booknum WHERE (nam ='" + name + "')";





"UPDATE booknum SET nam = '" + nam + "', phonenumbre1 ='" + phonenumbre1 +
"', phonenumbre2 = '" + phonenumbre2 + "', phonenumbre3 = '" + phonenumbre3 +
"'WHERE (idbook_number ='" + idbook_number + "')";
با دستورات بالا خطای زمان اجرا می دهد مبنی بر اینکه نوع ها را نمی تواند به هم تبدیل کند.

ghabil
پنج شنبه 26 فروردین 1389, 21:39 عصر
خب Select اول رو ران کن مقدار Id رو بگیر مثلا قرار بده در یک متغیر به نام BOOKID بعد ته Select دوم بجای IDBOOK_NUMBER که فکر میکنم اسم فیلدت هست مقدار BOOKID رو بزار دیگه

مهدی هادیان
جمعه 27 فروردین 1389, 07:41 صبح
خب Select اول رو ران کن مقدار Id رو بگیر مثلا قرار بده در یک متغیر به نام BOOKID بعد ته Select دوم بجای IDBOOK_NUMBER که فکر میکنم اسم فیلدت هست مقدار BOOKID رو بزار دیگه

دوست عزیز اینکه کاملا مشخصه ولی می خوام بدونم نوع id که قرار است در یک select آنرا پیدا کنم چی باید بزارم؟چون وقتی object یا int تعریف می کنم خطای زمان اجرا میده.معادل اتونامبر در c# چیه؟

اَرژنگ
جمعه 27 فروردین 1389, 08:11 صبح
دوست عزیز اینکه کاملا مشخصه ولی می خوام بدونم نوع id که قرار است در یک select آنرا پیدا کنم چی باید بزارم؟چون وقتی object یا int تعریف می کنم خطای زمان اجرا میده.معادل اتونامبر در C#‎‎ چیه؟

Retrieving Microsoft Access Autonumber Values



http://msdn.microsoft.com/en-us/library/ks9f57t0.aspx

manager_mrd
جمعه 27 فروردین 1389, 08:13 صبح
توي sqlserver ‎ اتو نامبر نداريم .اگه ميخواي فيلدت اين خاصيت رو داشته باشه اول اونو از نوع int تعريف كن و خاصيت allow null هم نداشته باشه بعد تو قسمت column propertise كه پايين صفحه است مقدار خاصيت identity specifacition رو باز كن كه گزينه ي is identity رو ميبيني مقدار اونو yes كن .حالا فيلدت خاصيت اتو نامبر داره كه ميتوني مقدار شروع اونو با identity increment هم تنظيم كني

مهدی هادیان
جمعه 27 فروردین 1389, 11:29 صبح
توي sqlserver ‎ اتو نامبر نداريم .اگه ميخواي فيلدت اين خاصيت رو داشته باشه اول اونو از نوع int تعريف كن و خاصيت allow null هم نداشته باشه بعد تو قسمت column propertise كه پايين صفحه است مقدار خاصيت identity specifacition رو باز كن كه گزينه ي is identity رو ميبيني مقدار اونو yes كن .حالا فيلدت خاصيت اتو نامبر داره كه ميتوني مقدار شروع اونو با identity increment هم تنظيم كني

با عرض معذرت شما اشتباه متوجه منظور من شده اید.بانک من توی اکسزه و من نوع فیلد رو اتو نامبر گذاشتم حالا میخوام تو c# آنرو بازیابی کنم.نمیدونم نوع خروجی رو چی بذارم.
مرسی

Argonod
جمعه 27 فروردین 1389, 11:31 صبح
AutoNumber در اکسس از نوع Long Integer هست نه int و نه Object