PDA

نسخه کامل مشاهده نسخه کامل : ساختن ديتا بيس



mina_ghorbani
14-05-2008, 09:33
نمي دونم جاي اين موضوع اينجاس با نه
اما
من مي خوام واسه پروجم يه ديتا بيس بسازم كمكم مي كنيد تا يه ديتا بيس خوب بسازم؟
پروجم يه برنامه حسابداري براي داروخونس
اگه كمكم مي كنيد من اون جدولايي كه ساختم اينجا بنويسم

Ultimator
14-05-2008, 12:11
البته ، هر کس بتونه کمک میکنه . من هم در حد توان و سوادم در خدمتم

mina_ghorbani
14-05-2008, 12:20
كارايي كه تو دلروخونه انجام مي شه اينا هستن فردا فايل ها رو سند مي ذارم اينجا
1-پرسنل داروهاي مورد نياز رو مشخص مي كنن
2- ويزيتور ها سفارش گرفته از داروخونه واسه شركت خودشون
3-بعد چند روز طبق يه فاكتور داروها رو ميارن
4-بعدش بايد بدونيم پرداخت نقديه يا چك
5-يكي (مشتري)مياد دارو مي خره
6-خريد با نسخه ----> جمع كل*30% = سهم بيمه شده
>جمع كل* 70% = سهم سازمان
+تعرفه ي داروخونه
+وسايل و دلرو هاي خارج بيمه(مثلا سورنگ و مولتي ويتامين)
7-آخر هر ماه نسخه ها + سهم سازمان (كه داروخونه ها خودشون يه نرم افزار دارن اينا رو وارد مي كنن)به بيمه مي دن (يه برگه هم جمع كل مبلغ در خواستي از بيمه )


فاكتوري كه ويزيتور مياره براي دلرو خونه موقع تحويل دارو شامل ايناس :
اسم شركت پخش
نام مشتري
آدرس
شماره تماس
اسم ويزيتور
مسير ورود اسم داروها
تعداد
كد دارو
قيمت فروش به داروخونه
قيمت مصرف كننده
جمع كل
تاريخ سر رسيد چك

Bracket
14-05-2008, 14:02
من به طراحی دیتا بیس نسبتا مسلط هستم اگر وقت بکنم یه دیاگرام برای دیتابیستون میکشم .

mina_ghorbani
15-05-2008, 08:55
من یه دیتا بیس واسش ساختم اما نمی دونم چه جوری بذارم اینجا که در موردش نظر بدید.

Ultimator
15-05-2008, 09:35
sql 2000 یا 2005

------------
میتونید به صورت یک کوئری sql از اون اسکریپت بگیرید

mina_ghorbani
15-05-2008, 13:13
ببخشید می خوام واسش اکتیویتی دیاگرام بکشم البته رشنال رز ندارم همین طور دستی
چهار تا آبجکت دارم بیمه،مشتری، داروخانهو ویزیتور که این وسط ویزیتور با بیمار وبیمه کار نداره چه جوری اکتیویتی بکشم ؟ میشه واسه یه پروزه چند تا اکتیویتی داشته باشیم؟

داروخانه à شروعà دادن سفارش à سفارشات à ویزیتور گرفتن سفارش à تهیه سفارشات à سهارشات تهیه شده à تحویل به داروخانه à داروخونه تحویل می گیره à نحوه ÷رداخت یا چک یا نقد à نقد که پرداخت می شه و تمومà چک باشه تا تاریخش


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

AABB
15-05-2008, 13:21
من یه دیتا بیس واسش ساختم اما نمی دونم چه جوری بذارم اینجا که در موردش نظر بدید.
خوب بذار تو rapidshare که ما بگیرمش(آپلود دیگه)

Bracket
16-05-2008, 13:08
من یه دیتا بیس واسش ساختم اما نمی دونم چه جوری بذارم اینجا که در موردش نظر بدید.
داخل Visio طراحی بکن یه عکس بگیر بزار اینجا .

mina_ghorbani
17-05-2008, 12:04
IF EXISTS (SELECT name FROM master.dbo.sysdatabases WHERE name = N'darukhooneh')
DROP DATABASE [darukhooneh]
GO
CREATE DATABASE [darukhooneh] ON (NAME = N'darukhooneh_Data', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL\data\darukhooneh_Data.MDF' , SIZE = 1, FILEGROWTH = 10%) LOG ON (NAME = N'darukhooneh_Log', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL\data\darukhooneh_Log.LDF' , SIZE = 1, FILEGROWTH = 10%)
COLLATE SQL_Latin1_General_CP1_CI_AS
GO
exec sp_dboption N'darukhooneh', N'autoclose', N'true'
GO
exec sp_dboption N'darukhooneh', N'bulkcopy', N'false'
GO
exec sp_dboption N'darukhooneh', N'trunc. log', N'true'
GO
exec sp_dboption N'darukhooneh', N'torn page detection', N'true'
GO
exec sp_dboption N'darukhooneh', N'read only', N'false'
GO
exec sp_dboption N'darukhooneh', N'dbo use', N'false'
GO
exec sp_dboption N'darukhooneh', N'single', N'false'
GO
exec sp_dboption N'darukhooneh', N'autoshrink', N'true'
GO
exec sp_dboption N'darukhooneh', N'ANSI null default', N'false'
GO
exec sp_dboption N'darukhooneh', N'recursive triggers', N'false'
GO
exec sp_dboption N'darukhooneh', N'ANSI nulls', N'false'
GO
exec sp_dboption N'darukhooneh', N'concat null yields null', N'false'
GO
exec sp_dboption N'darukhooneh', N'cursor close on commit', N'false'
GO
exec sp_dboption N'darukhooneh', N'default to local cursor', N'false'
GO
exec sp_dboption N'darukhooneh', N'quoted identifier', N'false'
GO
exec sp_dboption N'darukhooneh', N'ANSI warnings', N'false'
GO
exec sp_dboption N'darukhooneh', N'auto create statistics', N'true'
GO
exec sp_dboption N'darukhooneh', N'auto update statistics', N'true'
GO
if( (@@microsoftversion / power(2, 24) = 8) and (@@microsoftversion & 0xffff >= 724) )
exec sp_dboption N'darukhooneh', N'db chaining', N'false'
GO
use [darukhooneh]
GO
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[FK_joziatnoskhe_noskhe]') and OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[joziatnoskhe] DROP CONSTRAINT FK_joziatnoskhe_noskhe
GO
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[FK_daroo_sherkat]') and OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[daroo] DROP CONSTRAINT FK_daroo_sherkat
GO
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[FK_factor_sherkat]') and OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[factor] DROP CONSTRAINT FK_factor_sherkat
GO
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[FK_joziatFactor_daroo]') and OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[joziatFactor] DROP CONSTRAINT FK_joziatFactor_daroo
GO
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[FK_joziatnoskhe_daroo]') and OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[joziatnoskhe] DROP CONSTRAINT FK_joziatnoskhe_daroo
GO
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[FK_joziatFactor_factor]') and OBJECTPROPERTY(id, N'IsForeignKey') = 1)
ALTER TABLE [dbo].[joziatFactor] DROP CONSTRAINT FK_joziatFactor_factor
GO
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[joziatFactor]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[joziatFactor]
GO
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[joziatnoskhe]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[joziatnoskhe]
GO
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[daroo]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[daroo]
GO
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[factor]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[factor]
GO
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[noskhe]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[noskhe]
GO
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sherkat]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[sherkat]
GO
if not exists (select * from dbo.sysusers where name = N'guest' and hasdbaccess = 1)
EXEC sp_grantdbaccess N'guest'
GO
CREATE TABLE [dbo].[noskhe] (
[sn] [bigint] IDENTITY (1, 1) NOT FOR REPLICATION NOT NULL ,
[shomarebime] [nvarchar] (20) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
[gheymatkol] [bigint] NOT NULL ,
[sahmebimeshode] [bigint] NOT NULL ,
[sahmesazman] [bigint] NOT NULL ,
[tarikh] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL
) ON [PRIMARY]
GO
CREATE TABLE [dbo].[sherkat] (
[sn] [int] IDENTITY (1, 1) NOT FOR REPLICATION NOT NULL ,
[name] [nvarchar] (30) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
[sherkatID] [int] NOT NULL ,
[tel] [varchar] (20) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
[fax] [varchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ,
[address] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL
) ON [PRIMARY]
GO
CREATE TABLE [dbo].[daroo] (
[sn] [int] IDENTITY (1, 1) NOT FOR REPLICATION NOT NULL ,
[darooID] [nvarchar] (20) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
[namedaroo] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
[sherkatID] [int] NOT NULL ,
[tedadebaste] [int] NOT NULL ,
[tedaddarbaste] [int] NOT NULL
) ON [PRIMARY]
GO
CREATE TABLE [dbo].[factor] (
[sn] [bigint] IDENTITY (1, 1) NOT FOR REPLICATION NOT NULL ,
[sherkatID] [int] NOT NULL ,
[visitorname] [nvarchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
[masirvorod] [smallint] NOT NULL ,
[factorID] [bigint] NOT NULL
) ON [PRIMARY]
GO
CREATE TABLE [dbo].[joziatFactor] (
[sn] [bigint] IDENTITY (1, 1) NOT FOR REPLICATION NOT NULL ,
[factorID] [bigint] NOT NULL ,
[namedaroo] [varchar] (30) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
[tedad] [int] NOT NULL ,
[darooID] [nvarchar] (20) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
[gheymatbdarokhoone] [bigint] NOT NULL ,
[gheymatemasraf] [bigint] NOT NULL ,
[tarikhsarresid] [varchar] (10) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
) ON [PRIMARY]
GO
CREATE TABLE [dbo].[joziatnoskhe] (
[sn] [bigint] IDENTITY (1, 1) NOT FOR REPLICATION NOT NULL ,
[noskheID] [bigint] NOT NULL ,
[darooID] [nvarchar] (20) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
[tedad] [smallint] NOT NULL
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[noskhe] WITH NOCHECK ADD
CONSTRAINT [PK_noskhe] PRIMARY KEY CLUSTERED
(
[sn]
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[sherkat] WITH NOCHECK ADD
CONSTRAINT [PK_sherkat] PRIMARY KEY CLUSTERED
(
[sherkatID]
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[daroo] WITH NOCHECK ADD
CONSTRAINT [PK_daroo] PRIMARY KEY CLUSTERED
(
[darooID]
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[factor] WITH NOCHECK ADD
CONSTRAINT [PK_factor] PRIMARY KEY CLUSTERED
(
[sn]
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[daroo] ADD
CONSTRAINT [FK_daroo_sherkat] FOREIGN KEY
(
[sherkatID]
) REFERENCES [dbo].[sherkat] (
[sherkatID]
)
GO
ALTER TABLE [dbo].[factor] ADD
CONSTRAINT [FK_factor_sherkat] FOREIGN KEY
(
[sherkatID]
) REFERENCES [dbo].[sherkat] (
[sherkatID]
)
GO
ALTER TABLE [dbo].[joziatFactor] ADD
CONSTRAINT [FK_joziatFactor_daroo] FOREIGN KEY
(
[darooID]
) REFERENCES [dbo].[daroo] (
[darooID]
),
CONSTRAINT [FK_joziatFactor_factor] FOREIGN KEY
(
[factorID]
) REFERENCES [dbo].[factor] (
[sn]
)
GO
ALTER TABLE [dbo].[joziatnoskhe] ADD
CONSTRAINT [FK_joziatnoskhe_daroo] FOREIGN KEY
(
[darooID]
) REFERENCES [dbo].[daroo] (
[darooID]
),
CONSTRAINT [FK_joziatnoskhe_noskhe] FOREIGN KEY
(
[noskheID]
) REFERENCES [dbo].[noskhe] (
[sn]
)
GO

mina_ghorbani
19-05-2008, 13:55
نمی شه بهمم بگید این دیتا بیس خوبه یا نه ؟
مثلا افزونگی داره نددددددره چگونس؟

mina_ghorbani
21-05-2008, 09:31
ببينيد اين خوبه؟[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]