[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 250
  • Last Modified:

Confused about C#, SQL, and Access

i am working on a database in Access, but i'm not too far along with it. A friend (programmer) told me i should use C#. i've been reading "Beginning C# Databases", but i still can't figure out if i would be better off creating the database in C#, SQL, Access,or a combination of those. This database will contain data about myths around the world to be distributed via the web and CD. Can someone please help straighten me out? Thanks.
--e
0
baker_eliz
Asked:
baker_eliz
  • 13
  • 6
  • 6
2 Solutions
 
Razzie_Commented:
Hmm I think you misunderstood when you say 'I still can't figure out if i would be better off creating the database in C#, SQL, Access,or a combination of those'.

You're probably going to use MS Access as the database. This database will contain all the tables with the data you want to store. To get data from database, you almost always use SQL, Standard Query Language, that does so called 'queries' on the database. For example, SELECT * FROM tblDATA will get all the data from table 'tblDATA'.

However, you want something to do with this data. Therefor you can use C# to collect this data and put in on a website, so users can browse it.

So in short, with the programming language C#, you connect to the MS Access database, and you use SQL queries to get the data from the database. You show, modify, transform this data or whatever with C#.

HTH,

Razzie
0
 
baker_elizAuthor Commented:
So, i would put the Access tables on a CD or on the server in the case of the web.
In addition, i have file directories on my computer for images and text files. i assume these would be handled the same as the tables.
The text files must be fully searchable.
i would use C# to interface with the Access tables and the text files, using SQL commands within C#.
Is that correct?

Would i use C# to create the user interface forms and the code behind them?
The CD has to be cross-platform.

Thanks,
--e

0
 
servicegroupCommented:
For eaiser access for you and your "viewer's". It's eaiser to do it with Access.

I am assuming you are a beginner at C#. I would stay away from c# if you are only going to input and output on simple data such as mths around the world.
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
servicegroupCommented:
Access tables are stored in a file, so by putting the file on the CD, the user has all your data.

For the images and text files, I would recommand putting the relative path in the Access db and included in the CD as well using the relative path.
However if you want the text files to by fully searchable using Access, you are better off storing the data in the Access table.
0
 
baker_elizAuthor Commented:
The problem with putting Access on a CD, other than use the tables, is that the user has to also have Access (i don't have the version that creates a distributable).

All the forms i have created (only a few so far) in Access have coding behind them, and i expect that future forms will also. Won't this be a cross-platform problem on CDs?

i am currently accessing the images and text files via a relative path in the Access db. i could put the text in Access, but there are 600 myths, some of which are five or six pages long. Is this a good idea? i don't know, but it seems to me that putting these files directly in Access would slow it down.

--e
0
 
servicegroupCommented:
If you want cross-platform (I am assuming Windows, Mac, Linux), I would suggest a html front page with something like a java script to generate a table.

To generate the table, I am thinking that you would have to have a structured folder system such as

-Folder001
  -Myth(textfile)
  -Image01
  -Image02
-Folder002
  -Myth
  -Image01
etc.

I could go into more detail if this is what you looking for.

The main problem you are dealing with is "cross-platform" since html is the only "universial language"
0
 
Razzie_Commented:
Or you shouldn't create the forms in Access but with C#. That way you don't have to worry about it. I might be wrong, but I believe it is not necessary to have Access installed on a computer to access it database from C#. As long as you have the actual database file (.mdb IIRC) you can create a connection to that database to use it.

You can read text files from C# too, which isn't all that hard (and fast), so you wouldn't have to worry about that either. It all depends on what you want really.
0
 
baker_elizAuthor Commented:
Would SQL Server 2000 be better than Access? Or is it even really a db application? i have it but haven't had a chance to really look at it?

If i understand you correctly, i would use Access for the data structure and C# for the front-end. Would this be cross-platform using .NET, which compiles with an intermediate language (i think?) Forms and coding would be done in C#. Access would only be used for the table structure.

How different is the coding for the CD and for the web? Would i have to code two different interfaces?

--e
0
 
servicegroupCommented:
Razzie: How do you plan to use C# if baker_eliz wants this app cross-platform??

Also, It is necessary to install ODBC drivers for the machine in order for c# to have access the data in MS Access.

How do you "connect" from c# to .mdb file?
0
 
servicegroupCommented:
baker_eliz, What type of platform are you thinking about?

SQL Server is very heavy and require expensive license to develop AND deploy.

When you compile a C# app using .NET, it will generate the "intermediate" file. HOWEVER, you need IIS(offically only windows has it) to translate that intermediate file into a page which web browser can see.
0
 
servicegroupCommented:
For web: that's very different when it comes to programming from an windows app.

All you need is a back end server with any Database you like (MS Access, SQL Server) and IIS running, you could develop your app using c# or HTML. All the user need is have an internet connection and a supported web-brower.
0
 
baker_elizAuthor Commented:
This application needs to be cross-platform. In addition to being on the web, the Foundation (which is paying for the application) wants to be able to give CDs with the application on it to attendants at an art retrospective. The images in the application are paintings inspired by the myths.

We have SQL Server 2000 Developer Edition, but i haven't really looked at it except to install it on my machine and connect to it with C# tutorials. Would it be cross-platform?

Maybe i should use Java instead of C#?

--e
0
 
Razzie_Commented:
servicegroup: and how do you want it to be cross-platform if you want to use access? What I mean is, it started about how to use the combination C#, Access, SQL, not cross-platform. But anyway, there is always Mono :)

Forget about SQL Server, like servicegroup says, it is expensive and not really suitable for the job. You can of course use MySQL, it is free and fast.

I still don't get the whole idea of CD vs. Web version. Does the data get changed on the website? Can users add data? If not, why even using a database if you store the myths in text files and images? You could use simple HTML?
0
 
servicegroupCommented:
please define cross-platform (Widnows, Linux, Max, Sun Solaris)?

The only solution I can think of for the CD is using HTML webpages, which you can use for your Webpage also.
0
 
servicegroupCommented:
btw, being said using html and cross-platform, it would almost be impossible to use database.

Like I suggest as before, use a folder defined structured style to input the data
0
 
baker_elizAuthor Commented:
No, the data does not get changed on the website.
Users have no edit, add, delete privileges--the application is strictly for reference and study purposes.
It's in a database because:
1.  the text is excerpted from books studied by the artist who painted the images. Book data is given for the user, i.e., title, author,publisher, page num of the relevant myth, etc.
2.  The location of the myth is provided
3.  The people who created the myth is provided
4.  More than one version of the same myth is provided where appropriate
etc.

This application will be given away via CD at an art retrospective showing the 600+ paintings in the application created by a Professor Emeritus from UC Berkeley.

The art retrospective is funded by my employer, a non-profit organization.

An extensive program is also being created for seminars with various academics and luminaries from around the world and
also for elementary (in particular), junior-high, and high-school programs. These myths address questions all people ask, like "Where are we from?", "Why is there sickness?", etc.

i hope this addressed the issue of CD vs. web versions.

--e

0
 
servicegroupCommented:
it still does not define cross-platform, which is the most important issue with the CD.

Based on what type of platform you want to support, I could give you suggestions on how to implement the solution.

AS you can understand, there is no true "cross-platform" applications.

-Jim
0
 
Razzie_Commented:
Well, if you'd really want to have it cross=platform, you'd have to use a language like Java or C++ for the CD version. You could use XML as your database.
The webpage can be anything - it doesn't matter what you use on your server and if you use PHP, .NET, Java, you name it.
0
 
servicegroupCommented:
Razzie, if you use java or c++, how do you plan to "install" or "run" the application?

Every platform has a different type of machine code.

I guess you could ask everyone who has the CD to compile the code using their own machine?
0
 
Razzie_Commented:
You could put both windows and linux executables on the CD is more what I meant, and xml is 'cross-platform' for use as a database. But yes of course, there is not 'one' universal application that runs on both.

I think you should get rid of the idea of using a CD that is cross-platform. Surely how many people that attend an art showing run linux on their machines? That is just how I look at it, not meant as an 'insult' or something :)
0
 
servicegroupCommented:
I think artist like to use Mac's
0
 
Razzie_Commented:
Hmm. Good point :)

I think it is possible with using pure html and xml. I'm no expert in that though.
0
 
servicegroupCommented:
I think that is a good idea for the production for the CD

However, you can still store your data in the Microsoft SQL Server 2000, and when you are ready, export it to an XML

hmmm... that seems to be a good idea

0
 
baker_elizAuthor Commented:
Can you please explain about using pure HTML and XML on a CD?
Would i have to code the entire application in HTML or XML?
Can i export from Access to XML?

--e
0
 
servicegroupCommented:
Can you please explain about using pure HTML and XML on a CD?
When the CD is inserted into a machine, use the autorun.inf file to open a html page that will be your main page.
From there, user can click/search/browse the data that is enbedded in the XML using HTML.

Would i have to code the entire application in HTML or XML?
For HTML, more than likely yes.
or
you can create the HTML pages using a program that generates html pages based on the data in the database.

Can i export from Access to XML?
I am sure you can export Access to XML, but there are different ways to do that.
Also, using different method to generate the XML will create different schema's, so becareful with that.
0

Featured Post

Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

  • 13
  • 6
  • 6
Tackle projects and never again get stuck behind a technical roadblock.
Join Now