PDA

View Full Version : تغییر دیتابیس Access به SQL و Connection String .....



کامروا
سه شنبه 21 شهریور 1391, 19:22 عصر
سلام به همه

این سایت با VB.Net نوشته شده که تا الان با دیتابیس اکسس کار میکرده و کانکشن استرینگ فعلی هم مربوط به اکسس هست.

حال، دیتابیس این سایت به SQL Server 2008 تغییر پیدا کردند.

کانکشن استرینگ فعلی (Access):


<%@ Import Namespace="System.Web.SessionState" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.Oledb" %>
<%@ Page Language="VB" Debug="true" %>

<HTML>

<HEAD>

<title>Index Page</title>

<script runat="server">

Dim usercon As String = "Provider=Microsoft.Jet.OLEDB.4.0; data source=" & server.mappath("db\main.mdb")
Dim con As OleDbConnection
Dim cmd, cmdinsert As OleDbCommand
Dim dr As OleDbDataReader


اگر ممکنه من رو در تغییر کانکشن استرینگ به SQL همراهی کنید.
و همچنین اگر نیاز به تغییر کنترل هایی مثل Ole هست بفرمایید...

ببخشید من مبتدی ام :چشمک:

تشکر

کامروا
چهارشنبه 22 شهریور 1391, 00:13 صبح
کسی نبود ؟!!

PersianFA
چهارشنبه 22 شهریور 1391, 01:56 صبح
سلام
دیتا بیست رو داخل SQL SERVER ساختی؟

کامروا
چهارشنبه 22 شهریور 1391, 02:00 صبح
سلام
دیتا بیست رو داخل SQL SERVER ساختی؟
آره. درواقع همین دیتابیس اکسس رو تبدیل کردم

PersianFA
چهارشنبه 22 شهریور 1391, 02:12 صبح
از این کدا استفاده کن


Imports System.Data.SqlClient



Dim CString as New SqlConnection
CString.ConnectionString="Data source=persianfa-pc;initial catalog=Database;uid=admin;password=12345



که در اون persianfa-pc اسم سرورته
Databaseاسم جدولته
uid و password همون یوزر و پسورد دیتابیسته
اینطوری رشته اتصال ساخته میشه و ادامه کار

کامروا
چهارشنبه 22 شهریور 1391, 02:20 صبح
تشکر دوست عزیز

پس باید علاوه بر موارد فوق که فرمودید این ها هم تغییر بدم :


OleDbCommand -----------> SqlCommand
OleDbDataReader -----------> SqlDataReader
OleDbDataAdapter -----------> SqlDataReader




درسته ؟

تشکر

PersianFA
چهارشنبه 22 شهریور 1391, 02:28 صبح
بله. کاملا درسته
فقط دقت کن
OleDbDataAdapter -----------> SqlDataAdapter

کامروا
چهارشنبه 22 شهریور 1391, 02:36 صبح
واقعا ممنون دوست عزیز

تقریبا حدود 20 صفحه هست که باید توی تمام این صفحات این کانکشن و کنترل ها رو تغییر بدم.
خودم که میخوام فقط Replace کنم همش رو. امیدوارم که مشکلی پیش نیاد چون تجربش رو ندارم.

شما نظری ندارید؟

تمام قسمت های فوق و رو در تمام صفحات Replace کنم و Connection Srtring های Access رو به SQL تبدیل کنم، شما احتمالی نمیدید که مشکلی پیش بیاد ؟

بازم ممنون

PersianFA
چهارشنبه 22 شهریور 1391, 02:43 صبح
اولا خواهش میشه
دوما: شما چرا این کانکشن استرینگ هارو که تقریبا همه ی صفحه هاتت بهش نیاز دارن داخل فایل web.config ننوشتی تا دیگه 20 تااااااااا صفحه رو عوض نکنی؟
اینطوری هم خودت اذیت میشی هم احتمال اشتباه میره بالا
اگر بلد نیستی بگو بهت بگم چطوری

کامروا
چهارشنبه 22 شهریور 1391, 02:49 صبح
اولا خواهش میشه
دوما: شما چرا این کانکشن استرینگ هارو که تقریبا همه ی صفحه هاتت بهش نیاز دارن داخل فایل web.config ننوشتی تا دیگه 20 تااااااااا صفحه رو عوض نکنی؟
اینطوری هم خودت اذیت میشی هم احتمال اشتباه میره بالا
اگر بلد نیستی بگو بهت بگم چطوری
این سایت رو من ننوشتم کدهاش هم خیلی افتضاح نوشته هرکسی که بوده ...
منم خودم ASP.Net کار نکردم (PHP کار میکنم) بدلایلی مجبور شدم که خودم دیتابیسش رو تبدیل کنم.
هیچی هم از ASP.Net بلد نیستم.

بله اگر ممکنه بنده رو راهنمایی کنید تا انجامش بدم.

واقعا شرمنده !

تشکر

PersianFA
چهارشنبه 22 شهریور 1391, 03:03 صبح
خواهش میشه. هرچی باشه هممون برنامه نویسیم :چشمک:
ببین اول تو فایل web.config توی این شاخه ای که میگم اینکارا رو انجام بده و connectionString رو اضافه کن

<configuration>
<appSettings/>
<connectionStrings>
<add name="test" connectionString="your connection"/>
</connectionStrings>
<system.web>


name روهرچی دوست داری بذار اما یادت باشه که چی میذاری اینجا من گذاشتم test
connectionStrings هم همون چیزی رو بذار که باهم ساختیم. همون رشته اتصال


حالا بیا تو صفحه هایی که میخوای کد بنویسی و این کلاس رو اضافه کن


imports System.Web.Configuration


حالا کد ما به این شکل عوض میشه


Dim strcon As String = WebConfigurationManager.ConnectionStrings("test").ConnectionString
Dim myConnection As New SqlConnection(strcon)


اینطوری اگر یه روزی رشته اتصالتو بخوای عوض کنی فقط کافیه web.config رو اصلاح کنی و بقیه صفحه هات خود به خود درست به همون آدرس جدید وصل میشن

کامروا
چهارشنبه 22 شهریور 1391, 03:09 صبح
مرسی
حالا یک سوال :

توی هر Page تقریبا به 5-6 تا دیتابیس ارتباط داریم که واسه هرکدومشون هم یک Connection String تنظیم کردیم.

آیا واسه هرکدام از این دیتابیس ها باید توی فایل Web Config یک Connection String اضافه کنم و به همین روش بالایی اونها رو فراخونی کنم؟

PersianFA
چهارشنبه 22 شهریور 1391, 03:15 صبح
5 6 تاااااااااااااا دیتابیس؟؟؟ :متعجب:
من سایت دیده بود در هرصفحه به 5 6تا جدول وصل باشه اما 5 6 تا دیتابیس نه!!!
بله باید همین کارو بکنید
web.config شما به این شکل میشه مثلا


<configuration>
<appSettings/>
<connectionStrings>
<add name="test1" connectionString="your connection1"/>
<add name="test2" connectionString="your connection2"/>
</connectionStrings>
<system.web>

کامروا
چهارشنبه 22 شهریور 1391, 03:22 صبح
5 6 تاااااااااااااا دیتابیس؟؟؟ :متعجب:
من سایت دیده بود در هرصفحه به 5 6تا جدول وصل باشه اما 5 6 تا دیتابیس نه!!!
بله باید همین کارو بکنید
web.config شما به این شکل میشه مثلا


<configuration>
<appSettings/>
<connectionStrings>
<add name="test1" connectionString="your connection1"/>
<add name="test2" connectionString="your connection2"/>
</connectionStrings>
<system.web>

آره :کف:

ولی نه که بخواد توی هرصفحه به 5 تا دیتابیس مجزا وصل باشه یعنی :
20 صفحه * 5 دیتابیس = 100 تا دیتابیس (به این شکل نیستش ها :قهقهه:)

کلا 15 تا دیتابیس هست که توی بیشتر صفحات آپدیت میشن(تکرار).

بهرحال مرسی خیلی خیلی کمک کردین

تشکر