|
Dilkonika,
One approach is to NOT give users direct access to the machine where database system is running.
Have a middle tier server application(eg: tomcat) hiding your database from end users. Users may connect to middle tier server and invoke services. You may implement authentication using some standard framework within middle tier server application.
Best of luck!
|
|
|
|
|
If I understood your question correctly, you're worried about several, different things. As Mycroft said, the topic is way too large to discuss extensively in a post. However, few things I'd like to point out:
|
|
|
|
|
Hello !
I have this situation :
Table : Article
Id
name
category
.........................
Table : Services
id
name
nr
value
-------------------------
Table : Sell_item
Id
item_id
quantity
price
value
----------------
Now the problem is this : The field Item_id on the sell_item table can be the id for an Article or a Service. So I need to create a double relationship for this field one with Article table an one with Service table.
Is this possible ?
If not , or if I'm wrong how can I solve this situation ?
Thank you.
|
|
|
|
|
If I understood your question correctly you would use the same field (item_id) for two separate purposes. If that's correct, in my opinion you have something wrong with the database model.
Concerning your example I'd suggest something like:
Product
-------
- Id
- name
- category
- IsService
- nr
- value
Sell_item
---------
- Id
- product (former item_id), foreign key to Product
- quantity
- price
- value
The product table would hold all sell able items and the fields are a combination from your both former tables.
Also I wouldn't store the value (at least not as a normal column) since it can always be calculated from quantity times price.
|
|
|
|
|
ok , but as I can see you have merged my 2 tables. Me to I have thinked this , but the problem is that in my post I have included only some of the fields from 2 tables. In reality these tables have 15 and 13 fileds , and do you think is a good choice to have a table with 28 fields where for each record only 15 or 13 fields will have the data and others are just unnecessary ?
Can be COALESCE a help in this situation ?
|
|
|
|
|
In my opinion it's ok to have merge the tables and have nullable columns as long as the data is suitable concerning the table purpose. However, without seeing the whole model, it's impossible to say if this is feasible solution in your case.
As a rule of thumb one column stores data only for one purpose. What I mean is that even though you can do a dual reference, it's not advisable.
Another approach could be to use a whole separate table for the links. Consider the following
Article
-------
Id
Name
Category
Services
--------
id
name
nr
value
Sell_action
---------
sell_Id
other possible fields describing a single selling action
ArticlesSold
---------
sell_Id
article_id
amount
price
ServicesSold
---------
sell_Id
service_id
amount
price
Again this should be verified against the whole model and I must admit, I would put all the effort in modeling the sell able products properly instead of thinking how to simultaneously reference two separate tables. That would keep the model simple and clear
|
|
|
|
|
In the rare time when I have had to do this I live without the FK, it is not possible to have the FK to both child tables.
I suspect your 28 field count on the merged table is not valid, there should be some cross over (description in both tables). I would also have no compunction about merging the tables and having some nullable fields as Mika suggested.
Never underestimate the power of human stupidity
RAH
|
|
|
|
|
Dilkonika,
This is a typical supertype-subtype situation. I would consider ITEM as a supertype and ARTCLE and SERVICE as subtypes.
Common attributes of ARTICLE and SERVICE should go to ITEM and there should be identifying relationship from ARTICLE and SERVICE to ITEM.
I dont know how to attach an ER Diagram hence pasting a DDL for the schema.
CREATE TABLE [ITEM]
(
[item_id] char(18) NOT NULL PRIMARY KEY,
[name] char(18) NULL
)
go
CREATE TABLE [SERVICE]
(
[item_id] char(18) NOT NULL PRIMARY KEY,
[nr] char(18) NULL ,
[value] char(18) NULL
)
go
CREATE TABLE [ARTICLE]
(
[item_id] char(18) NOT NULL PRIMARY KEY,
[category] char(18) NULL
)
go
CREATE TABLE [SELL_ITEM]
(
[id] char(18) NOT NULL PRIMARY KEY,
[quantity] char(18) NULL ,
[price] char(18) NULL ,
[value] char(18) NULL ,
[item_id] char(18) NULL
)
go
ALTER TABLE [SERVICE]
ADD CONSTRAINT [R_2] FOREIGN KEY ([item_id]) REFERENCES [ITEM]([item_id])
go
ALTER TABLE [SELL_ITEM]
ADD CONSTRAINT [R_3] FOREIGN KEY ([item_id]) REFERENCES [ITEM]([item_id])
go
ALTER TABLE [ARTICLE]
ADD CONSTRAINT [R_1] FOREIGN KEY ([item_id]) REFERENCES [ITEM]([item_id])
go
|
|
|
|
|
I have Some table in database (Access, SQLServer and Oracle) haven' t Primary Key.Client need to do a replication for this database.
I ask how do the update script for one table to add primary key as GUID automatic (it means when I add a record as before there is no need to edit source code)
I did this for SQLServer and it works but for Access and Oracle no idea how to do this
example :
create table [SAC_MEMBERSHIPS](
id_group nvarchar(40) FOREIGN KEY REFERENCES SAC_SUBJECTS(id_subject),
id_user nvarchar(40) FOREIGN KEY REFERENCES SAC_SUBJECTS(id_subject),
id_memberships UNIQUEIDENTIFIER NOT NULL DEFAULT NEWSEQUENTIALID() PRIMARY KEY
)/
ALTER TABLE [SAC_MEMBERSHIPS]
ADD [id_memberships] UNIQUEIDENTIFIER NOT NULL DEFAULT NEWSEQUENTIALID() PRIMARY KEY
ON [PRIMARY]
/
|
|
|
|
|
create table [table] (
id raw(32) default sys_guid(),
...,
constraint pk_id primary key (id)
);
I'm not questioning your powers of observation; I'm merely remarking upon the paradox of asking a masked man who he is. (V)
|
|
|
|
|
Thank you for that.
But what about Access database ?
|
|
|
|
|
I don't know him!
I'm not questioning your powers of observation; I'm merely remarking upon the paradox of asking a masked man who he is. (V)
|
|
|
|
|
I talk about Microsoft Office access
|
|
|
|
|
Please do not use rude words here...
I'm not questioning your powers of observation; I'm merely remarking upon the paradox of asking a masked man who he is. (V)
|
|
|
|
|
|
The only mistake you did that you didn't realized the joke icon
I'm not questioning your powers of observation; I'm merely remarking upon the paradox of asking a masked man who he is. (V)
|
|
|
|
|
For ms access the best approximation is
id_memberships AUTOINCREMENT PRIMARY KEY
Cheers
|
|
|
|
|
Thank you , But I need it to be in automatic GUID forme.
|
|
|
|
|
What are you going to do if the record is updated rather than added?
|
|
|
|
|
Also Access has a Guid datatype.
CREATE TABLE [SAC_MEMBERSHIPS]
(
[id_memberships] GUID NOT NULL PRIMARY KEY,
...
|
|
|
|
|
I use
id_memberships GUID PRIMARY KEY DEFAULT GenGUID() NOT NULL
But I can do in Update Request SQL
Have you an idea how do the Update ?
|
|
|
|
|
how do download a excel file from a website by using that website url(.csv) in c# code, in design section file shuld download on a button click and save in my system tell me the full procedure
|
|
|
|
|
This is not a question that can be answered in a few lines. You need to go and research some of the libraries that can be used to download files.
|
|
|
|
|
I JUST WANT PROCEDURE NOT A CODE OR SOMETHIN ...
|
|
|
|
|
The procedure is:
- Collect requirements
- Research tools and libraries
- Write code
- Test, diagnose problems, and correct errors.
- Repeat above until working
|
|
|
|