data-modeling

How do you recommend implementing tags or tagging

I've heard of a few ways to implement tagging; using a mapping table between TagID and ItemID (makes sense to me, but does it scale?), adding a fixed number of possible TagID columns to ItemID (seems like a bad idea), Keeping tags in a text column that's comma separated (sounds crazy but could work). I've even heard someone recommend a s...

What's the best way to model recurring events in a calendar application?

I'm building a group calendar application that needs to support recurring events, but all the solutions I've come up with to handle these events seem like a hack. I can limit how far ahead one can look, and then generate all the events at once. Or I can store the events as repeating and dynamically display them when one looks ahead on th...

What is the ultimate program to make a drawing of a database model?

One of the first things I do when I'm on a new project is design a database model. To visualize the model I use a 7 year old version of Smartdraw. Maybe it's time for something new. What is the ultimate program to make a drawing of a database model. Smartdraw is for Windows only. Is there something that can be used on unix as well? ...

One To Many To Itself

How would one structure a table for an entity that can have a one to many relationship to itself? Specifically, I'm working on an app to track animal breeding. Each animal has an ID; it's also got a sire ID and a dame ID. So it's possible to have a one to many from the sire or dame to its offspring. I would be inclined to something l...

What modeling tools are everyone using?

I am trying to get a sense of what tools people are using for system modeling? Right now I use: Data Modeling - Erwin System Architecture - Visio UML - Visio I have been looking for a good freeware data modeling tool that can rival Erwin, but haven't found anything yet. I have always wondered if tools like Popkins System Architect ...

What metadata repository tools are used in industry?

For logical data model mapping, do we have some tools in the market. Any open source or relatively cheap tool? ...

Database table for grades

I'm trying to define a table to store student grades for a online report card. I can't decide how to do it, though. The grades are given by subject, in a trimestral period. Every trimester has a average grade, the total missed classes and a "recovering grade" (i don't know the right term in english, but it's an extra test you take to tr...

MySQL data modeling.

I have this current problem with data i have to represent in a MySQL database: I have to support different kinds of products with different data each one, for example, cars, hotel rooms, books, etc. For my application there is some data which is common for each product, like name, description, price, etc. So I think of having a produc...

What are the benefits of an XML data model over the DataSet model?

At my current job we have a CMS system that is .NET/SQL Server based. While customizing a couple of the modules for some internal use, I was a little surprised to see that instead of having APIs that returned data via your typical result set that was bound to a DataGrid/DataList/Repeater control, that the APIs returned an XML node/collec...

MySQL Composite PK with Nullable FKs

First off, let me preface this question by stating that I'm really a pretty terrible data modeler. I know only enough to be dangerous. The table I'm building has four foreign keys, two of which reference the same table. Here's the create statement for that table. CREATE TABLE IF NOT EXISTS `abnr`.`reputation_event_log` ( `id` INT ...

How do you handle "special-case" data when modeling a database?

Our organization provides a variety of services to our clients (e.g., web hosting, tech support, custom programming, etc...). There's a page on our website that lists all available services and their corresponding prices. This was static data, but my boss wants it all pulled from a database instead. There are about 100 services listed. ...

Some snarks are boojums: list of boojums, or is_boojum property on all snarks?

The problem domain features a large population of named snarks. Some of the snarks are boojums. There are at least two ways to model this: // as a property: class Snark { string name; bool is_boojum; }; // as a list: class Snark { typedef long Id; Id id; string name; }; t...

Best practice for managing data-model changes in a released system

I am about to embark on the development of a web application project. I'd like to get something up early and often for early adopters to play with and feedback. But I envisage the data model changing as the project progresses and my understanding of the system improves. How should I manage the dilemma of updating the data model appro...

Data Modeling Tool for SQL Server

Hi guys, do you know any free data modeling tool for SQL Server similar to the ERwin Data Modeler or the ER/Studio? ...

Data Modeling: What is a good relational design when a table has several foreign key constrainst to a single table?

Hi there! I have 2 tables: 1. Employees 2. Vouchers Employees table has a single primary key. Vouchers table has 3 foreign key constraints referencing the Employees table. The following is a sample T-SQL script (not the actual table script) to create both tables and their relationship in SQL Server: IF OBJECT_ID('dbo.Vouchers') IS N...

Define Generic Data Model for Custom Product Types

I want to create a product catalog that allows for intricate details on each of the product types in the catalog. The product types have vastly different data associated with them; some with only generic data, some with a few extra fields of data, some with many fields that are specific to that product type. I need to easily add new pr...

Resolve dependencies on data model without cascading delete

Data model: tTemplate (TemplateId int PK) tPage (PageId int PK, TemplateId int FK) tEmailMessage (EmailMessageId int PK, TemplateId int FK) Requirements: Deleting a template should be permitted only if there are no dependencies on it. The TemplateService is responsible for deleting templates: new TemplateService().Delete(myTemplate...

How to share data between model and view?

I'm currently working on redesigning an application which is building a model from input data, and displaying that data to the user. The current system has a thread for building the model, a thread for building a visualization of the model, and a thread which displays the visualization. The problem I have is that pointers are passed betw...

"One-to-many" modeling question

What is the best way to model the following... Assume I have two objects: Agency and Publisher, and both have a 1-to-n relationship to Employee. This is a true 1-to-n relationship, as each Employee can only work for one Agency or one Publisher. Let's assume further that I cannot introduce a supertype (e.g. Employer) which holds the 1-to...

Large/complex dataset for ORM validation?

I'm looking for freely available sample data to do some ORM validation and performance testing on. My main requirements are: Discriminated types: it needs to include some kind of inheritance eg Party -> Person and Organisation; Reasonably complex data model; Some reasonably large tables (in the hundreds of thousands of rows at least);...